Compiler Warning (level 1) C4624


The new home for Visual Studio documentation is Visual Studio 2017 Documentation on

The latest version of this topic can be found at Compiler Warning (level 1) C4624.

derived class' : destructor was implicitly defined as deleted because a base class destructor is inaccessible or deleted

A destructor was not accessible or deleted in a base class and was therefore not generated for a derived class. Any attempt to create an object of this type on the stack will cause a compiler error.

The following sample generates C4624 and shows how to fix it:

// C4624.cpp  
// compile with: /W1 /c  
class B {  
// Uncomment the following line to fix.  
// public:  
class D : public B {};   // C4624 B's destructor not public