委託是包含有相同簽名和返回值型別的有序方法列表
委託儲存的方法可以來自任何類或結構,需要同時匹配返回值和簽名(簽名包含
ref和
out)
delegate void mydel(int x)
建立委託物件
mydel delvar;//建立乙個委託
delvar = new mydel(class.m1)//用完整的語法初始化委託
delvar = class.m1//直接用語法糖初始化委託
//委託可以組合(委託之間相加),也可以用+=和-=來增加和減少委託中的方法
委託的呼叫:
委託名(變數)的方法來呼叫委託,括號內為宣告委託的簽名
如果委託中有多個方法,會挨個呼叫每乙個方法
如果有方法註冊多次,每一次遇到時都會呼叫
如果方法有返回值,委託會返回最後乙個方法的返回值
如果引數中帶入引用,每次都會引入新的值(如圖:)
委託可以用來宣告匿名方法,
但是更多的,匿名方法使用
lambda
來宣告
C 委託基礎1 委託基礎
委託和其委託的方法必須具有相同的簽名。簽名相同 1.引數型別相同 2.引數數量相同 3.返回值一致 例一 class program static void main string args mm 7,6 console.readline 例二 class program double subtra...
c 委託基礎
委託 1.概念 委託是函式的封裝,它代表一 類 函式。它們都符合一定的簽名 擁有相同的引數列表 返回值型別。同時,委託也可以看成是對 函式的抽象,是函式的 類 2.語法 delegate argument list 3.用法 1.宣告委託,比如 public delegate void del st...
C 基礎 委託
一 委託 當我們需要把方法做為引數傳遞給其他方法的時候,就需要使用委託。因為有時候,我們要操作的物件,不是針對資料進行的,而是針對某個方法進行的操作。我們還是來以 入手 using system using system.collections.generic using system.linq u...