C/C++修炼之道02——虚函数/纯虚函数,虚基类,vtbl(虚函数表)/vptr(虚函数表指针)

这里先占个位,以后会慢慢补充,这里先做一下名词解释。

【虚函数】:在某基类中被声明为virtual,并在一个或多个派生类中被重新定义的成员函数。虚函数的定义:

class <类名>
{
virtual <类型><函数名>(<参数表>);
};

        虚函数的作用是实现动态联编,也就是在程序的运行阶段动态地选择合适的成员函数,在定义了虚函数后,可以在基类的派生类中对虚函数进行重新定义,在派生类中重新定义的函数盈余虚函数具有相同的形参个数和形参类型,当然,派生类可以不重写基类中的虚函数,而直接继承基类中的方法来实现。                

【纯虚函数】:如果在基类中不能对虚函数给出有意义的实现,而是只保留了函数接口,它的实现完全留给该基类的派生类去做,这样的函数叫做纯虚函数,纯虚函数的定义与虚函数稍有不同,如下所示:

class <类名>
{
virtual <类型><函数名>(<参数表>)=0;
};

【虚基类】:当在多条继承路径上有一个公共的基类,在这些路径中的某几条汇合处,这个公共的基类就会产生多个实例(或多个副本),若只想保存这个基类的一个实例,可以将这个公共基类说明为虚基类。



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值