When to use virtual destructors?
Virtual destructors are useful when you might potentially delete an instance of a derived class through a pointer to base class: class Base { // some virtual methods }; class Derived : public Base { ~Derived() { // Do some important cleanup } }; Here, you’ll notice that I didn’t declare Base’s destructor to be … Read more