История изменений
Исправление safocl, (текущая версия) :
Правильно ли я вас понимаю, что обращение к owner_->item_deactivated() из деструктора Item, который произошел в результате вызова items_.clear() в ~Owner – это уже UB?
The lifetime of an object ends when:
if it is of a class type, the destructor call starts, or
upd. Однако пока деструктор ~Owner не завершился можно было бы без UB делать напрямую декремент, если само то поле каунтера захватить по указателю или ссылке.
Исправление safocl, :
Правильно ли я вас понимаю, что обращение к owner_->item_deactivated() из деструктора Item, который произошел в результате вызова items_.clear() в ~Owner – это уже UB?
The lifetime of an object ends when:
if it is of a class type, the destructor call starts, or
upd. Однако пока деструктор ~Owner не завершился можно было бы без UB делать напрямую декремент, если его самого захватить по указателю или ссылке.
Исходная версия safocl, :
Правильно ли я вас понимаю, что обращение к owner_->item_deactivated() из деструктора Item, который произошел в результате вызова items_.clear() в ~Owner – это уже UB?
The lifetime of an object ends when:
if it is of a class type, the destructor call starts, or