Search code examples
c++destructorvirtual-destructor

When there is a virtual function in a class, is the implicitly generated destructor virtual too?


Suppose we have a class

class A
{
    virtual void f();
};

Will the default destructor be virtual?


Solution

  • No. The destructor is always non-virtual unless you explicitly say that it's virtual or the class has a base class with a virtual destructor.