C 委託與事件機制 理解比較簡單,大神莫噴

2021-06-18 20:15:13 字數 514 閱讀 5256

c#委託與事件機制

事件機制是乙個這樣的場景:有a、b、c、d四個類,當a有事件fireevent發生時,b、c、d必須作出相應該反應(即執行相應的方法)。

using system;

using system.collections.generic;

using system.linq;

using system.text;

using system.threading.tasks;

namespace csharp_delegate_event

//所有要收到fireevent事件的使用者,都要註冊

public void register(listers l)

//取消註冊

public void unregister(listers l)

}class b

}class c

}class d

}class program

}}

C 簡單的理解委託和事件

在c 中可以利用 函式指標 將對方法的引用作為實參傳遞給另乙個方法,而c 中可以利用委託提供相同的功能。但是委託實際上是乙個特殊的類。委託必須直接或間接的派生自system.delegate。實際的委託型別總是派生自system.multicastdelegate 建立委託的時候,編譯器自動繼承的是...

C 事件與委託簡單實現

假設我們有個高檔的熱水器 heater 我們給它通上電,當水溫超過95度的時候 1 揚聲器 alarm 會開始發出語音,告訴你水的溫度 2 液晶屏 display 也會改變水溫的顯示,來提示水已經快燒開了。可以建立如下事件與委託 在控制台下實現 heater.cs using system usin...

C 委託與事件區別簡單總結

前天接了個 面試,被問到事件與委託的區別,雖然一直用但真要你說有什麼區別一時半會還真說不上來。於是問google老師,得到如下答案 2.委託可以在外部被其他物件呼叫,而且可以有返回值 返回最後乙個註冊方法的返回值 而事件不可以在外部呼叫,只能在宣告事件的類內部被呼叫。我們可以使用這個特性來實現觀察者...