一、是什么
1)委托包含对方法而不是方法名称的引用。使用委托可以在运行时动态设定要调用的方法,不知道方法名称,也可以调用方法,执行(或调用)一个委托将执行该委托引用的方法。
2)委托将名称与方法的定义连接起来,即将方法的实现附加到该名称。这样便可以使用该名称调用特定的方法。但是,委托要求方法的实现和委托必须具有相同的方法签名(也就是说,他们应该具有相同数量/类型的参数),并有相同类型的返回值。
3)委托更像一个具有通用的方法名称,在不同的情况将该名称指向不同的方法,并通过委托执行这些方法。
二、怎么用
使用委托包括三个步骤:
1)定义委托
2)实例化委托
3)使用委托
我们上一个例子:
class Program
{
//定义一个委托
public delegate int Call(int num1, int num2);
class Math
{
public int Mutiply(int num1, int num2)
{
return num1 * num2;
}