чехол-1:Какой из следующих случаев требует виртуального деструктора?
Базовый класс имеет динамически выделенную переменный, но производный класс не делает, а затем я:
Base* p = new Derived;
delete p;
чехол-2:
Оба оснований и производный класс имеет динамически распределенные переменные (у производных есть дополнительные динамически распределенные переменные, кроме унаследованных). Опять же, я:
Base* p = new Derived;
delete p;
Case-3: Базовый класс не имеет динамически распределяемой переменные, но производный один делает. Я делаю это снова:
Base* p = new Derived;
delete p;
Case-4: Ни базовый, ни производный класс не имеет динамически распределенной переменной. Снова я:
Base* p = new Derived;
delete p;
Или это вызывает неопределенное поведение во всех случаях, если виртуальное ключевое слово игнорируется?
Как насчет того, чтобы сделать домашнее задание самостоятельно и чему-то научиться? :-) – Waldheinz