Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Наследование. Виртуальные методы/деструкторы. - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ error C2143: синтаксическая ошибка: отсутствие "]" перед ";" http://www.cyberforum.ru/cpp-beginners/thread560822.html
#include <iostream> #include <conio.h> #include <cmath> using namespace std; // Программа int main () { setlocale (LC_ALL, "Russian" ); int m, p, r, tab , i, j; cout << "Введите любое...
C++ Есть ли утечка памяти? Пример добавления элемента в список. // Включение в список нового компонента void comp_in(dyn_list &l, char* n, char* v) { comp* c = new comp(); strcpy_s(c->name, 20, n);... http://www.cyberforum.ru/cpp-beginners/thread560813.html
C++ Задача на Структуры
Записная книжка состоит из страниц. В книжке сохраняются телефонные номера знакомых. На каждой странице указаны фамилии, начинающиеся с одной и той же буквы – индекса этой страницы. Данные о...
Определить, на каком расстоянии от начала автотрассы начинается и заканчивается первый самый длинный участок с непрерывным подъемом C++
Всем доброго времени суток! Помогите пожалуйста решить задачу: Известна высота над уровнем моря каждого километра 100-километровой автотрассы. Определить, на каком расстоянии от начала автотрассы...
C++ Максимальное количество одинаковых элементов массива http://www.cyberforum.ru/cpp-beginners/thread560723.html
Всем доброго времени суток! Помогите пожалуйста решить задачу: Дан целочисленные массив размера N. Определить максимальное количество его одинаковых элементов. На языке С. Спасибо!
C++ Класс complex для программной модели заданного объекта. Описание объекта и его основных свойств приводится ниже. Привести фрагмент программы (int main), использующий объекты разработанного класса: Объект... подробнее

Показать сообщение отдельно
Nick Alte
Эксперт С++
1639 / 1011 / 119
Регистрация: 27.09.2009
Сообщений: 1,945
Завершенные тесты: 1
28.04.2012, 17:41
Не так. При уничтожении автоматических объектов всё обрабатывается правильно в любом случае, а вот если мы сделаем так:
C++
1
2
3
4
5
6
void foo()
{
    Cell *ptr = new Prey();
    // ...
    delete ptr;
}
то при невиртуальном деструкторе будет вызван деструктор именно от Cell, а не от Prey, что в корне неправильно. Если же в Cell деструктор виртуальный, то будет вызван деструктор Prey, который автоматически обратится и к деструктору Cell.
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru