5 When to use virtual cloning and destructor

Although you can use virtual cloning and virtual destructors with every class, they are not needed in all cases.

First of all, the virtual cloning technique is not needed if a class hierarchy does not contain other virtual methods. Without other virtual methods (that are inherited and possibly overriden), virtual cloning does not offer any benefit over the usual copy constructor technique.

However, the use of virtual destructors is more common. Every one of the following are conditions that necessitate the use of virtual destructors.