It is must to provide a function body for pure virtual destructor as derived class’s destructor is called first before the base class destructor, so if we do not provide a function body, it will find out nothing to be called during object destruction and error will occur.
Read moreWhat is virtual destructor in C++?
A virtual destructor is used to free up the memory space allocated by the derived class object or instance while deleting instances of the derived class using a base class pointer object .
Read moreDoes C++ have virtual destructor?
Virtual destructors in C++ are used to avoid memory leaks especially when your class contains unmanaged code , i.e., contains pointers or object handles to files, databases or other external objects. A destructor can be virtual.29 Eki 2016
Read moreHow virtual destructor works internally C++?
In simple terms, a virtual destructor ensures that when derived subclasses go out of scope or are deleted the order of destruction of each class in a hierarchy is carried out correctly . If the destruction order of the class objects is incorrect, in can lead to what is known as a memory leak.
Read more