委托的基本原理
委托是一类继承自 System.Delegate
的类型,每个委托对象至少包含一个指向某个方法的指针,该方法可以是实例方法,也可以是静态方法。
委托实现了回调方法的机制,能够帮助程序员设计更加简洁优美的面上对象程序。
csharp
using System;
namespace SimpleDelegate
{
class Program
{
public delegate void TestDelegate(int i);
static void Main(string args)
{
TestDelegate d = new TestDelegate(PrintMessage);
d(0); // output : 第 0 个方法
d(1); // output : 第 1 个方法
d.Invoke(2); // output : 第 2 个方法
d.Invoke(3); // output : 第 3 个方法
Console.Read();
}
static void PrintMessage(int i)
{
Console.WriteLine("第" + i + "个方法");
}
}
}