【C#】委托-Delegate
时间: 2023-07-12 08:44:25 浏览: 131
浅析C# 委托(Delegate)
好的,很高兴回答你关于 C# 中委托的问题。
委托是一个类,它允许您将方法作为参数传递给其他方法。它是一种类型安全的函数指针。在 C# 中,委托声明使用 delegate 关键字。当您声明一个委托时,您需要指定它可以代表的方法的签名(即返回类型和参数类型)。
下面是一个简单的示例,演示如何使用委托:
```csharp
delegate int MyDelegate(int x, int y);
class Program
{
static int Add(int x, int y)
{
return x + y;
}
static int Subtract(int x, int y)
{
return x - y;
}
static void Main(string[] args)
{
MyDelegate del1 = Add;
MyDelegate del2 = Subtract;
Console.WriteLine(del1(10, 5)); // 输出 15
Console.WriteLine(del2(10, 5)); // 输出 5
}
}
```
在这个例子中,我们声明了一个委托类型 MyDelegate,它可以代表一个接受两个 int 类型参数并返回 int 类型结果的方法。然后,我们声明了两个方法 Add 和 Subtract,它们都符合 MyDelegate 的签名。最后,我们创建了两个委托实例 del1 和 del2,分别指向 Add 和 Subtract 方法。我们可以调用这些委托实例,传递它们的参数,并获得它们的结果。
希望这可以解答您的问题。如果您还有任何问题,请告诉我!
阅读全文