Originally Posted by shabbir
You can overload destructor's because you need to make them virtual as well so the destructor's are called.
A difference between a destructor and other member functions is that, if a regular member function has a body at the derived class, only the version at Derived class gets executed. Whereas in case of destructors, both derived as well as base class versions get executed.
It would be very nice if you support your answer with some example...