__event в native С++ -- глюк или фича?
От: Alex Ryabchun  
Дата: 12.09.02 13:43
Оценка:
При использовании __event (VC 7.0) и директивы
[event_source(native)]
class AClass
{
__event void func();
};
для native С++ класса,
компилятор подставляет свой код, список event hanler-ов, пару методов, и еще что-то,
но не обнуляет начальное значение __eventHandlerList_AClass_func — первый node в списке
В результате ошибка — проверка на не ноль и обращение в этот не ноль.

Если в конструкторе прописать инициализацию: __eventHandlerList_AClass_func = NULL,
Обращение к func() начинает работать.
Но диссоциировать handler путем обращения к __unhook(...) не получается — просто ничего не происходит.

То ли Microsoft выпустил совершенно сырой вариант, то ли я чего-то не понимаю.
Плииз.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.