C 學習筆記之委託

2021-09-29 08:21:03 字數 560 閱讀 3715

委託

委託(delegate)是一種儲存函式引用的型別。就和c中的函式指標差不多。

委託的宣告非常類似於函式,但不帶函式體,且要使用delegate關鍵字。委託的宣告指定了個返回型別和乙個引數列表。

定義了委託後,就可以宣告該委託型別的變數。接著把這個變數初始化為與委託具有相同返回型別和引數列表的函式引用。之後,就可以使用委託變數呼叫這個函式,就像該變數是乙個函式一樣。

作用:可以把委託變數作為引數傳遞給乙個函式,這樣,該函式就可以使用委託呼叫它引用的任何函式,而且在執行之前不必知道呼叫的是哪個函式。

delegate double processdelegate (double param1, double param2);定義委託

processdelegate process;宣告委託

process =new processdelegate (multiply);設定委託的函式,引數使用函式名,不帶括號

process (param1, param2);使用委託

設定函式時還有一種簡單寫法process =multiply;

C 學習筆記之 委託 delegate

菜鳥教程 委託 當遇到在執行時才能決定用哪種方法的時候,使用委託。可以把delegate看做乙個包含有序方法列表的物件,這些方法具有相同的簽名和返回型別。定義乙個委託 訪問修飾符 delegate 返回型別 委託名 引數列表 訪問修飾符不是必須的 public delegate int mydele...

C 學習筆記之泛型委託

求陣列的最大值 普通委託寫法如下 using system using system.collections.generic using system.linq using system.text using system.threading.tasks namespace 求陣列的最大值 匿名函式...

C 「委託」學習筆記

using system using system.collections.generic using system.linq using system.text namespace delegatetest console.writeline sh3 jiang 組合委託,此時委託就能夠依次執行多...