Re: Обращение к защищенному деструктору из наследника
От: i-gen  
Дата: 14.07.11 19:42
Оценка: 1 (1)
Дело в том, что Вы внутри метода B::deleter обращаетесь к глобальному оператору delete который пытается вызвать деструктор A::~A — а это ему не позволено (деструктор не public, а оператор delete не член классов A или B.
Решением могло бы быть определение оператора delete (как члена) внутри класса A (а вместе с ним определять и симметричный оператор new).
Еще одним (возможным) решением было бы добавить в класс A запись: friend operator delete (так не пользовал — не уверен, что верно)
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.