程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> C#編程利器之四:委托與事件(Delegate and event) (上)(3)

C#編程利器之四:委托與事件(Delegate and event) (上)(3)

編輯:關於C語言

從上面的例子看,委托OperationDelegate代表了一組方法,他們的方法簽名是:

--返回值:int; 參數:int ,int ;

只要符合該簽名的方法,都可以賦給此委托:從上面不難看出,我要要創建一委托,則如下定義:

1OperationDelegate del += new OperationDelegate(方法名);

從上面可以看到(+=)這個運算符,那是不是也有(-=)這個運算符呢?這就涉及到另外一個概念了--委 托鏈。

--委托鏈:實際上委托實例就是一個委托鏈,+=代表增加委托實例到委托鏈中,相反-=則代表去掉該 委托實例。

1OperationDelegate del = null;
2del += new OperationDelegate(Add); //增加委托實例到委托鏈
3del -= new OperationDelegate(Add); //去掉委托實例到

委托的意義之一

--委托可以使得程序的復用程度提高;

--委托在一定程度上想當於接口;

例如:前面例子中的方法Operate(),由於接受的是一個委托類型;那麼,我們可以對委托類型賦予不 同的方法,來改變Operate()的性質。

我們在來看看另外一個示例:

--我們想輸出一串數字,從0-100;

--對於輸出的要求有三種;

-1、輸出到控制台

-2、輸出到窗體中的ListBox中;

-3、輸出到文本文件中;

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved