C C 委託和事件的例項講解

2021-07-04 00:00:21 字數 530 閱讀 2688

using system;

namespace delegate_event

// 定義乙個委託,名字隨便起

public delegate void catshoutdelegate ();

// 定義乙個事件,事件的型別是委託的名字

public event catshoutdelegate catshoutevent;

// 定義乙個貓叫的方法

public void shout ()

", name);

// 當執行貓叫的方法的時候,會判斷委託的例項物件是否存在

// 當存在例項物件的時候,表示事件已經發生了

// 這個時候就該執行被委託的方法了,main函式中是委託的什麼方法就執行什麼方法

if (catshoutevent != null)

} }class mouse

public void run ()

}class mainclass }

}

C 委託和事件例項

當建立委託物件時,委託的引數型別必須與委託方法相對應。只要向建立委託物件的建構函式中輸入方法名稱example.method,委託就會直接繫結此方法。使用mydelegate.invoke string message 就能顯式呼叫委託方法。但在實際的操作中,我們無須用到 invoke 方法,而只要...

C C 事件與介面例項講解分析

c 事件與介面例項講解分析 初學c 的,對於事件與介面感到迷惑不解,不明白它們之間的關係,通過資料以下例項能說明它們之間的關係 using system using system.collections.generic using system.componentmodel using system...

委託例項(delegate例項 事件委託通知)

delegate例項 delegate是c 中的一種型別,它實際上是乙個能夠持有對某個方法的引用的類。與其它的類不同,delegate類能夠擁有乙個簽名 signature 並且它只能持有與它的簽名相匹配的方法的引用。它所實現的功能與c c 中的函式指標十分相似。它允許你傳遞乙個類a的方法m 給另乙...