c#委託基礎

來源:互聯網
上載者:User

委託
1.概念:委託是函數的封裝,它代表一“類”函數。它們都符合一定的簽名:擁有相同的參數列表、傳回值類型。同時,委託也可以看成是對

函數的抽象,是函數的“類”。
2.文法:<modifiers> delegate <return_type> <delegate_name> ( argument_list )
3.用法:
 (1.聲明委託,比如:public delegate void Del(string str);
 (2.執行個體化委託並指向其代的方法,比如:Del handler = new Del(Mothod),注意這裡的Mothod的方法簽名必須和委託聲明的簽名一致


 (3.調用委託:handler("Hello World!");

 

多播委託
1.概念:包含多個方法的委託叫做“多播委託”。
2.如果調用多播委託,就可以按順序連續調用多個方法。為此,委託的簽名就必須返回void;否則就只能得到委託調用的最後一個方法的結果


3.添加和刪除委託中的方法使用+=和-=操作,其實它們分別調用了Delegate.Combine和Delegate.Remove方法,例如:
Del handler = new Del(Mothod1);
handler += Mothod2;

 

 

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.