"невиртуальный" деструктор порожденного класса
От: DmitryShm Россия  
Дата: 11.02.13 22:25
Оценка: -2
Как сделать так, чтобы код с невиртуальным деструктором в порожденном классе давал ошибку компиляции? Дело в том, что компилятор дает скомпилировать такой код

class A
{
    public:
        virtual ~A() {}
};

class B : public A
{
    public:
        ~B() {}
};


где деструктор класса B также является виртуальным, несмотря на неуказание слова virtual. Как бы задать опции для современных компиляторов (g++ и MSVC++), чтобы такой код компилировался с ошибками, заставляя явно указывать virtual в определении деструкторов порожденных классов.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.