Class A {
public: void display(){
printf("This is A\n");
}
}
Class A:public B{
public: void display(){
printf("This si B");
}
}
main(){
A t1;
B t2;
t1->display();
t2->display();
}
这样运行出的结果:
This is A
This is A
解决方法需要定义display()为虚函数,改为:virtual void display();
只需要定义在A类中即可,因为B是A 的派生类,继承A中的public.
或者还有一种写法:
A *p= new A;
B *q =new B;
p->display();
q->display();