1. 程式人生 > >C# 委托

C# 委托

{0} 包裝 另一個 read 委托 style 執行 .cn ron

基本步驟

(1)定義委托類型,其定義類似方法的定義,只是多了一個delegate;

(2)實例化委托,委托也是屬於類類型所以用也用new關鍵字實例化;

委托的實例化用一個方法名作為參數,並且該方法的定義必須符合委托的定義;

即參數個數、參數類型、返回類型與委托一樣

(3)把委托實例化的對象當參數傳遞給其他方法或直接執行委托(實質就是在執行委托包裝的方法);

C#委托可以理解為函數的包裝,他可以使方法作為參數來傳遞給另一個方法

技術分享

例:

 1 class HelloWorld
 2    {
 3       //定義委托類型,其定義類似方法的定義,只是多了一個delegate;
4 delegate void Mydelegate(int a,int b); 5 static void Main(string[] args) 6 { 7 //聲明與實例化委托變量 8 Mydelegate mydelegate=new Mydelegate(new HelloWorld().Add); 9 //將實例化的對象mydelegate作為參數傳遞給方法 10 new HelloWorld().Go(mydelegate); 11 Console.ReadKey();
12 } 13 void Add(int a=0,int b=0) 14 { 15 Console.Write("This sum is {0}",a+b); 16 } 17 private void Go(Mydelegate mydelete) 18 { 19 //在方法中調用委托 20 mydelete(10,20); 21 } 22 }

結果為:

技術分享

C# 委托