0
点赞
收藏
分享

微信扫一扫

学习虚函数表


基类指针指向派生类

class A
{
public:
virtual void f()
{
cout<<"fa"<<endl;
}
void g(){

cout<<"ga"<<endl;
}
};
class B:public A
{
public:
virtual void f()
{
cout<<"fb"<<endl;
}
void g(){
cout<<"gb"<<endl;
}
};
vb B::f A::gB::g

如果没virtual关键字

A::f A::g B::f B::g;

A*a=new B;

a->f();  print  fb;

a->g(); print ga;


如果有A B一个C继承A继承B 木有重写

A::f A::g C::f C::g

B::fB::g

如果f被重写了的话就是

C::f A::g C::f C::g

C::fB::g




如果不是指针。就不这样了

A a;

a.f a.g  print fa ga

举报

相关推荐

0 条评论