![](/img/trans.png)
[英]Is there an actual difference in the 2 different ways of attaching event handlers in C#?
[英]What is the difference between different ways of attaching\detaching event handlers in C#
我的問題分為兩部分 -
首先,我們可以通過以下兩種方式附加事件處理程序 -
myObject.MyEvent += new EventHandler(MyHandler);
myObject.MyEvent += MyHandler;
根據我的理解,這兩個是等價的。 在第二種情況下,C#編譯器完成從指定方法組的適當重載創建委托實例的工作。 這個對嗎?
其次,拆分處理程序的兩種相應樣式之間有什么區別嗎? 如果是,那么它是什么?
myObject.MyEvent -= new EventHandler(MyHandler);
myObject.MyEvent -= MyHandler;
它們是相同的,除非你在c#1.2中只有第一個編譯。
正如您所提到的,生成的IL代碼沒有區別。 C#編譯器仍然創建一個處理程序。
在刪除中也沒有區別。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.