| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Для новичков > отсутствие виртуальных деструкторов |
| Автор: neosapient 29.10.2020, 01:27 | ||||||
| Здравствуйте. Хочу задать класс-интерфейс с пустыми виртуальными методами. И хочу спрятать всю функциональность в статическую библиотеку. Нет ли утечки памяти из-за такой реализации? Интерфейс для класса А определен ниже. В нем только виртуальные методы. *.h-файл
Статическая библиотека
Использование статической библиотеки сторонним программистом.
То есть был создан объект класса B. Потом объект был удален. Но объект класса В содержит в себе субобъект класса А. (Если я правильно помню, то компиляторы выделяли несколько пустых байт под класс А, хоть в классе А нет переменных). Так как деструктор не виртуальный, то будет вызван деструктор только для объекта класса B, но не для субобъекта А. Что меня интересует: будет ли удален субобъект класса А из оперативной памяти? - те самые несколько пустых байт, что сгенерирует компилятор. Или эти несколько байт замусорят память? Спасибо. |
| Автор: neosapient 31.10.2020, 16:30 |
| Понял. Спасибо. |