仮想基底クラスについて質問があります。多重継承における「恐ろしいダイアモンド オブ デス」/あいまいさの問題を解決するために、仮想基底クラスが導入されました。
class A { public: void Foo() {} };
class B : public virtual A {};
class C : public virtual A {};
class D : public B, public C {};
宣言でキーワードvirtual
が使用されていない場合はどうなりますか。class C
詳しく説明していただけますか?
class A { public: void Foo() {} };
class B : public virtual A {};
class C : public A {};
class D : public B, public C {};