我有一堂课A。
classesB和C是从 class 派生的接口A。
A
/ \
B C
现在我必须实现类D和E两者。BC
然后是一些类:FDB, GDC, HEC, IEB, JDB, KDC, LEB, MEC(而DB这些DC类的名称末尾的 and 表示该类使用Dand作为, and for , and for等B的结尾。DBDCDCEBEB
所以:
class A..
class `B`: public virtual `A`..
class `C`: public virtual `A`..
class `D`: public B, public `C`..
class `E`: public B, public `C`..
class `FDB`: public `D`..
class `GDC`: public `D`..
class `HEC`: public `E`..
class `IEB`: public `E`..
class `JDB`: public `D`..
class `KDC`: public `D`..
class `LEB`: public `E`..
class `MEC`: public `E`..
但后来我有一个钻石遗产,我不想要它。
有人可以建议另一种设计吗?
任何帮助表示赞赏!