Однажды столкнулся с утверждением (применительно к Windows), что если деструкторы в наследуемых классах не будут виртуальными, то при уничтожении объекта будут отрабатывать только деструкторы наследуемых классов, а базовые деструкторы остаются в пролёте. А если сделать деструктор наследуемого класса виртуальным (ну и базового наверное тоже), то будут отрабатывать _все_ деструкторы. Только что проверил это для линуха. Вроде без виртуальности всё работает. Когда я писал портабельный софт, то мне порекомендовали делать все деструкторы классов виртуальными. Объясните, пожалуйста, действительно ли это является истиной, или это чья-та ошибка??
Ответ на:
комментарий
от Die-Hard
Ответ на:
комментарий
от anonymous
Ответ на:
комментарий
от Die-Hard
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум Виртуальные деструкторы (2016)
- Форум Виртуальный деструктор (2008)
- Форум [c++] виртуальные деструкторы (2010)
- Форум Проблема с деструктором класса (2002)
- Форум C++ виртуальные деструкторы (ну простите) (2018)
- Форум Шаблонный класс с виртуальными функциями (2017)
- Форум Вызов виртуальной функции из абстрактного класса. (2014)
- Форум Исключение в деструкторе (2013)
- Форум С++ поведение деструктора? (2015)
- Форум Деструкторы не нужны (?) (2016)