For two classes with a common virtual base class:
class Base {}; class Derived1 : public virtual Base {}; class Derived2 : public virtual Base {};
Is there a difference between these two additional derived classes:
class Derived3 : public virtual Base, public Derived1, public Derived2 {};
class Derived3 : public Derived1, public Derived2 {};
The first also comes directly from the virtual base class, but I think this has no effect, because it shares with Derived1 and Derived2 .
source share