|
5 / 5 / 1
Регистрация: 19.05.2009
Сообщений: 23
|
||||||
Разрушение объектов при наследовании13.09.2011, 22:43. Показов 2233. Ответов 7
Метки нет (Все метки)
Привожу код, вопрос после описания
A constr B constr A destr Вопрос: почему в таком случае не будет вызван деструктор класса В?
0
|
||||||
| 13.09.2011, 22:43 | |
|
Ответы с готовыми решениями:
7
Создание и разрушение объектов |
|
5 / 5 / 1
Регистрация: 19.05.2009
Сообщений: 23
|
|
| 13.09.2011, 23:36 [ТС] | |
|
Я знаю что при виртуальном деструкторе все будет работать, но почему, что в этом случае происходит в памяти, почему так выходит??
0
|
|
|
1186 / 543 / 78
Регистрация: 01.07.2009
Сообщений: 3,517
|
|
| 13.09.2011, 23:37 | |
|
Хм, а я вроде читал в стандарте что должны вызываться деструкторы в обратном порядке к вызову конструкторов независимо от того виртуальные они там или нет.
0
|
|
|
237 / 210 / 29
Регистрация: 08.06.2011
Сообщений: 467
|
||
| 13.09.2011, 23:43 | ||
|
0
|
||
|
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
|
|
| 13.09.2011, 23:53 | |
|
Поскольку деструктор не виртуальный, то он вызовется, как и любая не виртуальная функция, на основе типа указателя, а не типа фактического объекта.
0
|
|
|
237 / 210 / 29
Регистрация: 08.06.2011
Сообщений: 467
|
||
| 13.09.2011, 23:55 | ||
|
0
|
||
|
Заблокирован
|
|||||||||||||
| 14.09.2011, 21:17 | |||||||||||||
|
Если вы хотите, чтобы в вашем примере правильно был удавлен объект, а делать виртуальным деструктор вы не хотите, то вы можете написатьо следующий код
Я думаю, больше вопросов должен вызывать мой код, а не ваш! С вашим кодом все просто, не то, что с моим! ![]() Добавлено через 3 минуты Если вы хотите, чтобы в вашем примере правильно был удавлен объект, а делать виртуальным деструктор вы не хотите, то вы можете написатьо следующий код
Я думаю, больше вопросов должен вызывать мой код, а не ваш! С вашим кодом все просто, не то, что с моим! А, скорей всго, я вру! Все равно нужен виртуальный деструктор! Так что мой фокус не проходит.
1
|
|||||||||||||
| 14.09.2011, 21:17 | |
|
Помогаю со студенческими работами здесь
8
Создание и разрушение объектов класса, исследование вызовов конструкторов и деструкторов Использование шаблонов при наследовании, ошибка при компиляции Сравнение при наследовании
Деструктор при наследовании Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога
Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
|
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога
Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога
Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
|
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|