C# 中的委托作为函数的入参的作用,请举例说明。
时间: 2024-05-16 07:13:29 浏览: 72
C# 中的委托可以作为函数的入参,用于将一个函数作为参数传递到另一个函数中,从而实现函数的回调和动态调用。这种方式可以方便地实现面向对象编程中的回调机制,也可以用于实现事件驱动编程。
以下是一个简单的示例,演示了如何使用委托作为函数的入参:
```csharp
// 定义一个委托,用于表示两个整数相加的函数
delegate int AddDelegate(int a, int b);
// 定义一个函数,用于接收一个委托作为参数,并调用该委托
public static void DoAdd(AddDelegate addDelegate)
{
int result = addDelegate(1, 2);
Console.WriteLine("1 + 2 = " + result);
}
// 定义一个函数,用于实现两个整数相加
public static int Add(int a, int b)
{
return a + b;
}
// 使用示例
static void Main(string[] args)
{
// 创建一个委托实例,指向 Add 函数
AddDelegate addDelegate = new AddDelegate(Add);
// 将委托作为参数传递给 DoAdd 函数
DoAdd(addDelegate);
}
```
在上面的示例中,我们定义了一个委托 `AddDelegate`,它表示两个整数相加的函数。然后我们定义了一个函数 `DoAdd`,它接收一个 `AddDelegate` 委托作为参数,并调用该委托。最后我们定义了一个 `Add` 函数,用于实现两个整数相加。在 `Main` 函数中,我们创建了一个 `AddDelegate` 委托实例,指向 `Add` 函数,并将该委托作为参数传递给 `DoAdd` 函数,从而实现了函数的回调。