Với hai lớp với một lớp cơ sở ảo chung:C++ ảo thừa kế khác biệt
class Base {};
class Derived1 : public virtual Base {};
class Derived2 : public virtual Base {};
Có sự khác biệt giữa hai lớp có nguồn gốc xa hơn ?:
class Derived3 : public virtual Base, public Derived1, public Derived2 {};
class Derived3 : public Derived1, public Derived2 {};
Đầu tiên cũng xuất phát trực tiếp từ cơ sở ảo c lass, nhưng tôi nghĩ rằng nó không có hiệu lực, bởi vì nó được chia sẻ với Derived1
và Derived2
.