C 多播委託 注意事項

2022-02-21 01:29:32 字數 1185 閱讀 7624

委託的基本概念就不說了,我先簡單說一下什麼是多播委託。

包含多個方法的委託就是多播委託

簡單地舉了例子:

delegate

void

mydelegate();

static

void main(string

args)

static

void

write()

static

void

read()

多播委託識別"+","+=","-","-="運算子,以從委託中刪除或新增方法呼叫。

多播委託實際上就是多個委託的集合,如果在實行多播委託時,其中乙個方法丟擲異常,那麼整個迭代都會停止。

delegate

void

mydelegate();

static

void main(string

args)

catch

(exception)

console.readline();

}static

void

write()

static

void

read()

得到的結果是:

write this is using named method

error caught

為了避免這種方法,需要自己迭代列表。下面是修改後的**

delegate

void

mydelegate();

static

void main(string

args)

catch

(exception)

}console.readline();

}static

void

write()

static

void

read()

得到的結果是:

write this is using named method

error caught

read this is using named method

error caught

C 多播委託

昨天第一次學到了多播委託,記錄一下最簡單的用法。顧名思義,多播委託就像廣播一樣,由乙個委託例項引用多個方法。通過 和 運算子實現對引用方法的增加和減少。1 static void main string args 211 public static void test1 1215 public st...

C 多播委託

乙個委託呼叫多個方法 例如 action a test1 a test2 增加乙個新方法,按順序執行,只能得到最後乙個方法的值 a test2 減去乙個方法 當a為空時會報錯,如果乙個方法出錯,其餘不會呼叫 取得乙個多播委託的所有方法 getinvocationlist 返回值為delegate 陣...

C 委託,委託鏈,多播委託

委託 概念 委託是一種使用者自定義的型別.是一種類.可以把委託看成用來執行方法 函式的乙個東西 形式 delegate 函式返回型別 委託名稱 引數部分 例項化 委託型別 例項化名 new 委託型別 方法名稱 實現 usingsystem usingsystem.collections.generi...