请考虑以下简单示例:
figure.cpp
此代码不起作用,因为调用foo是不明确的。但问题是:
如何定义应该从哪些类继承哪些方法?如果我有这样的机会?
答案 0 :(得分:1)
消除对函数的调用。请看以下示例:
class A { virtual void foo(); };
class B { virtual void foo(); };
class C : public A ,public B { void foo(); };
从A,B甚至从子类调用foo:C do
C *obj = new C;
obj->foo();
obj->A::foo();
obj->B::foo();
来源/灵感:http://www.cprogramming.com/tutorial/multiple_inheritance.html