委託類(delegate)

來源:互聯網
上載者:User

委託是一個類,它定義了方法的類型,使得可以將方法當作另一個方法的參數來進行傳遞,這種將方法動態地賦給參數的做法,可以避免在程式中大量使用If-Else(Switch)語句,同時使得程式具有更好的可擴充性。

委託是一個參考型別,所以它具有參考型別所具有的通性。它儲存的不是實際值,而是儲存對儲存在託管堆(managed heap)中的對象的引用。那它儲存的是對什麼的引用呢?委託儲存的是對函數(function)的引用。

在C#中使用delegate關鍵字定義委託,然後使用我們熟悉的函數調用的文法來調用委託。

委託是事件的基礎。

委託類似於 C++ 中的函數指標;但是,委託是型別安全和可靠的。

委託允許將方法作為參數進行傳遞。

委託可用於定義回調方法。

委託可以連結在一起;例如,可以對一個事件調用多個方法。

方法不需要與委託簽名精確匹配。

定義和使用委託分三個步驟:聲明、執行個體化和調用

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.