Если поле класса хранит ссылку на объект, удалит ли деструктор по умолчанию объект, на который ссылается поле?
Нет, ведь ссылка не обязательно указывает на объект, созданный new
.
Деструктор по умолчанию только вызывает деструкторы всех полей и базовых классов, если они есть.
Деструктор вызывается при смерти обьекта. Если обьект А
хранит ссыльку на обьект В
, то при уничтожении обьекта А
вызовится его деструктор, который не обязательно должен уничтожать объект В
(деструктор по умолчанию точно это не сделает), если только вы так не захотите(часто это плохая идея). А если объект В
не находится в динамической памяти, то никакой деструктор не сможет его уничтожать. P.S. Тут главное заботится о том, чтобы обьект В
не был удален раньше чем А
станет не нужным.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Задача - показать контрол в полноэкранном режимеРешил создавать полноэкранное окно перемещать туда контрол, а при закрытии этого окна возвращать...
Мне нужно будет подключить библиотеку muParser (GitHub) к Qt Creator
Пишу в LinuxНеобходимо подключиться к Access бд,но Qtговорит что нет такого драйвера QODBC, хотя в предложенных он имеется
Хотите улучшить этот вопрос? Обновите вопрос так, чтобы он вписывался в тематику Stack Overflow на русском