C# 委托
阿新 • • 發佈:2017-05-23
{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# 委托