Re[4]: Ошибка с подсчетом ссылок
От: lol4ever  
Дата: 04.10.06 12:12
Оценка:
Здравствуйте, AndrewJD, Вы писали:

AJD>1. Если ты не хранишь этот обьект, то пользы от смарт поинтера никакой.

AJD>2. Вызывающая сторона предполагает, что параметром будет поинтер на row интерфейс, а не какой-то класс. Тебе просто повезло, что размер _com_ptr совпал с размером указателя. Но конструктор никто не вызвал. ИМХО,
это ожидаемое поведение.


согласен, что от смарта пользы никакой, сделан на автомате в тот момент был, но все же...
А насчет данного везения — ох что-то сомневается мне, что так вот повезло с размерами... Моя логика такая:раз вызывается деструктор, то создавался _com_ptr_t. Раз создается _com_ptr_t, значит вызывается конструктор. Раз вызывается конструктор,должен быть аддреф... Ну а потом деструктор...

Решение, в принципе, понятно, но все равно не понятно поведение — почему все работает-та, кроме подстчета ссылок? Про то, что ждется row интерфейс — оно логично, но должен ж он был на меня ругнуцца?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.