C++ distinguishes regular inheritance from virtual
inheritance. Explain this distinction.
Solution
Normally, when a C++ class D has two parent classes that both
extend a common class A, each D object includes two
A sub-objects. This is regular inheritance.
With virtual inheritance, each D object would include
only one A sub-object.