委托是C#中新加入的一个类型, 和使用类相似,使用一个委托时, 首先你要定义一个委托,就 是定义 委托, 然后, 创建一个或多个该委托的实例。 下面这个例子,比较复杂些,
private static void GreetPeople(string name, GreetingDelegate MakeGreeting)
{
MakeGreeting(name);
}
这个方法,定义了一个委托 MakeGreeting 然后参数 是 name 接着在 main 主函数中调用 MakeGreeting (); 这里 有参数 是方法 。 跟上面讲的一样。 using System;
class Program
{
public delegate void GreetingDelegate(string name);
private static void EnglishGreeting(string name)
{
Console.WriteLine("Morning, " + name);
}
private static void ChineseGreeting(string name)
{
Console.WriteLine("早上好, " + name);
}
//注意此方法,它接受一个GreetingDelegate类型的参数,该参数是返回值为空,参数为string类型的方法
private static void GreetPeople(string name, GreetingDelegate MakeGreeting)
{
MakeGreeting(name);
}
static void Main(string[] args)
{
GreetPeople("Jimmy Zhang", EnglishGreeting);
GreetPeople("张子阳", ChineseGreeting);
Console.ReadKey();
}
}
(责任编辑:admin) |