Aviso do compilador (nível 3, desativado) C4265
"classname": a classe tem funções virtuais, mas o seu destruidor não trivial não é virtual; as instâncias desta classe podem não ser destruídas corretamente
Quando uma classe tem funções virtuais, mas um destruidor não virtual, objetos desse tipo podem não ser destruídos corretamente quando a classe é destruída por meio de um ponteiro de classe base.
Esse aviso está desativado por padrão. Para obter mais informações, confira Avisos do compilador desativados por padrão.
O seguinte exemplo gera o aviso C4265:
// C4265.cpp
// compile with: /W3 /c
#pragma warning(default : 4265)
class B
{
public:
virtual void vmf();
~B();
// try the following line instead
// virtual ~B();
}; // C4265
int main()
{
B b;
}