1.委托是一种安全地封装方法的类型,它与 C 和 C++ 中的函数指针类似;
2.与 C 中的函数指针不同,委托是面向对象的、类型安全的和保险的;
3.声明了一个名为 Del 的委托,该委托可以封装一个采用字符串作为参数并返回 void 的方法。
public delegate void Del(string message);
4.构造委托对象时,通常提供委托将包装的方法的名称或使用匿名方法;
5.实例化委托后,委托将把对它进行的方法调用传递给方法;
6.调用方传递给委托的参数被传递给方法,来自方法的返回值(如果有)由委托返回给调用方;
7.可以将一个实例化的委托视为被包装的方法本身来调用该委托。例如:
// Create a method for a delegate.
public static void DelegateMethod(string message)
{
System.Console.WriteLine(message);
}
// Instantiate the delegate.
Del handler = DelegateMethod;
// Call the delegate.
handler("Hello World"); |