关于多继承解决思路

关于多继承C/C++ codeclass A{public:virtual void fun(){printf(1)}}class B : public A{public:virt

关于多继承

C/C++ code
class A{public:virtual void fun(){    printf("1");}};class B : public A{    public:    virtual void fun()    {        printf("2");    }};class C : public A{    public:    virtual void fun()    {        printf("3");    }};class D : public B , public C{};int _tmain(int argc, _TCHAR* argv[]){    C c;    c.fun();    return 0;}

输出3,为什么呀

[解决办法]
C的对象调用的是C的fun(),输出3不是很正常吗?

你要说的是D的对象调用fun()函数吧?