今天复习了一下事件和委托,本来看事件来着,看到EventHandler,写了一个小例子,想贴在这里解释一下。为了弄清楚EventHandler,
还是回归到最基本的委托,曾经在园子里看到一位前辈用深入浅出的语言写了委托,有些印象,收藏了,链接是:http://www.cnblogs.com/xcj26/p/3536082.html#2882421
非常羡慕他对抽象概念的清晰有条理的描述,把委托的定义和使用分一二三写出来,非常地直白。
step1:首先用delegate定义一个委托 。
step2:声明一个方法来对应委托。
step3:用这个方法来实例化这个委托。
step4:调用委托。(自己加的)
按照这个步骤我自己写一个简单的例子:
1 class Program 2 { 3 //step1 定义委托 4 public delegate void ShowCity(string cityName); 5 6 //step2 声明与委托对应的方法 7 public static ShowCityFunction(cityName) 8 { 9 Console.WriteLine(cityName); 10 } 11 12 13 static void Main() 14 { 15 //step3 实例化委托 16 ShowCity show=new ShowCity(ShowCityFunction); 17 18 //step4 实例化委托 19 show.Invoke("su zhou"); 20 show("shang hai"); // 两种调用方式的效果一样 21 22 Console.ReadLine(); 23 24 } 25 26 }