Sobes.tech
Junior — Senior
62

Сгенерировать ситуацию, вызывающую неопределённое поведение при удалении через базовый указатель

Условие задачи

Необходимо показать пример, когда объект производного класса удаляется через указатель на абстрактный базовый класс, у которого деструктор не объявлен виртуальным. В таком случае происходит неопределённое поведение или выбрасывается исключение.

struct A {
    virtual void foo() = 0;
    // деструктор не виртуальный
};

struct B : A {
    ~B(); // должен быть вызван корректно
};