我有以下结构:
class A{
public:
virtual void fn() = 0;
} ;
class B : public A{
public:
virtual void fn(){
//implB
}
} ;
class Base{
//whatever
} ;
class C : public Base,public B{
public:
virtual void fn(){
//implC
}
} ;
B* instance = new C();
(*instance).fn()
这似乎调用implB
而不是implC
。这是正常的吗?我想调用的实现implC
,fn
有没有办法做到这一点?