devxlogo

Destructors Can Be Simultaneously Pure Virtual and Have an Implementation

Destructors Can Be Simultaneously Pure Virtual and Have an Implementation

If you want to force a class to be abstract (meaning you can’t actually create an instance of it), but don’t have any pure virtual functions to do it, you can declare the destructor as pure virtual, even if it has a body.
Place in the header file:

 class AbstractClass{   ...   virtual ~AbstractClass() = 0     { delete myPtr; }};

You could also move the body of the function to the source file.

devxblackblue

About Our Editorial Process

At DevX, we’re dedicated to tech entrepreneurship. Our team closely follows industry shifts, new products, AI breakthroughs, technology trends, and funding announcements. Articles undergo thorough editing to ensure accuracy and clarity, reflecting DevX’s style and supporting entrepreneurs in the tech sphere.

See our full editorial policy.

About Our Journalist