Partilhar via


Aviso do compilador (nível 3) C4265

“classes: a classe tem funções virtuais, mas o destruidor não é virtual

Quando uma classe tem funções virtuais mas um destruidor nonvirtual, os objetos de tipo não podem ser destruído corretamente quando a classe é destruída por meio de um ponteiro da classe base.

Esse aviso é desativada por padrão. Consulte Avisos do compilador que estão por padrão para obter mais informações.

O seguinte exemplo gera 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;
}