Dela via


Kompilatorvarning (nivå 3, av) C4265

"classname": klassen har virtuella funktioner, men dessas icke-triviala destruktor är inte virtuell; instanser av denna klass kanske inte förstörs korrekt

Anmärkningar

När en klass har virtuella funktioner men en icke-virtuell destruktor, kan det hända att objekt av denna typ inte förstörs korrekt när klassen förstörs genom en basklasspekare.

Den här varningen är inaktiverad som standard. Mer information finns i Kompilatorvarningar som är inaktiverade som standard.

Example

I följande exempel genereras 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;
}