I have it
A
/ \
B C
\ /
D
A has a pure virtual function prototyped as:
virtual A* clone(void) const = 0;
B and C are actually inherited from A ( class B: public virtual A, class C: public virtual A)
B has a virtual function prototyped as:
virtual B* clone(void) const {};
C has a virtual function prototyped as:
virtual C* clone(void) const {};
D inherits from both B and C: class D: public B, public C
D has a virtual function prototyped as:
virtual D* clone(void) const {};
Now, when compiling, I get the following 6 lines of errors:
error C2250: 'D' : ambiguous inheritance of 'B *A::clone(void) const'
Lack of imagination how to solve this problem.
Thanks in advance.
source
share