В чем разница между различными способами присоединения \ отсоединения обработчиков событий в C # - PullRequest
3 голосов
/ 05 декабря 2010

На мой вопрос есть две части -

Во-первых, мы можем прикрепить обработчики событий двумя способами -

myObject.MyEvent += new EventHandler(MyHandler);

myObject.MyEvent += MyHandler;

Насколько я понимаю, эти две функции эквивалентны.Во втором случае компилятор C # выполняет работу по созданию экземпляра делегата из соответствующей перегрузки из указанной группы методов.Это правильно?

Во-вторых, есть ли разница между двумя соответствующими стилями отсоединения обработчика?Если да, то что это?

 myObject.MyEvent -= new EventHandler(MyHandler);

 myObject.MyEvent -= MyHandler;

Ответы [ 2 ]

5 голосов
/ 05 декабря 2010

Они идентичны, если вы не находитесь в c # 1.2, где компилируются только первые.

4 голосов
/ 05 декабря 2010

Нет разницы в сгенерированном коде IL - как вы упоминали. Компилятор C # в любом случае создает обработчик.

В удалении также нет разницы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...