我有许多类 1 类、2 类等继承了 A 类和 B 类(但并非所有类都继承了这两个类)。
代码如下所示:
class 1: public A, public B
{
getVar() { return mVar; }
}
class 2: public A, public B
{
getVar() { return mVar; }
}
class A
{
protected: int mVar;
}
class B
{
virtual int getVar()=0;
}
这里我从 B 类中的 A 类获取变量。但为此我必须实现 getVar() { return mVar;
在所有派生自 A 和 B 的类 (classN) 中。
正确的设计方法应该是什么,以便我可以提供默认实现,而不必在所有派生类中编写相同的代码。
最佳答案
定义类 C 继承自 A 和 B 并实现 getVar() { return mVar;
那里。然后你可以从 C 继承你之前从 A 和 B 继承的地方。
关于c++ - 具有多重继承和依赖父类的设计,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37195366/