先定义委托:
public delegate void SaySomething(string name);
定义事件:
public event SaySomething come;
定义具体方法:
public void SayHello(string name) { Console.WriteLine("Hello," + name + "!"); }
public void SayNiceToMeetYou(string name) { Console.WriteLine("Nice to meet you," + name + "!"); }
最后使用:
come += SayHello; come += SayNiceToMeetYou; come("张三");
事件和委托的区别:
事件是一种特殊的委托,事件的默认实现是个多播委托,事件可以使用+=和-=来注册和移除委托,而委托只能=