以下代码是后期绑定test()方法,但不应该早绑定?因为test()方法是不是在B类虚拟(但在A类),我们使用的是B类父类父函数中的虚函数
class A{
public:
virtual void test(){
cout<<"test a";
}
};
class B : public A{
public:
void test(){
cout<<"Test b";
}
};
class C: public B{
public:
void test(){
cout<<"test c";
}
};
int main(){
B *bp;
C objc;
bp = &objc;
bp->test(); // test c
}
'测试'在这里的所有课程中都是虚拟的; '虚拟'关键字不需要重复。 – MicroVirus