虚函数表和虚函数表指针的创建时机

1、虚函数表的创建时机

编译器发现类中包含virtual关键字修饰的函数就会创建虚函数表

虚函数表的内容在编译器编译的时候已经生成

虚函数表存在于全局数据区的只读数据段中

虚函数表是存放虚函数的地址的数组

2、虚函数表指针创建时机

对象构造时,在构造函数中将虚函数表指针赋值给对象vptr(对象的起始地址)

如果类没有构造函数,编译器会生成一个默认的构造函数,从而为类的vptr初始化。

继承下虚函数表指针的创建过程:

        1、调用基类的构造函数,先将基类的虚函数表地址赋值给vptr

        2、调用子类的构造函数,将子类的虚函数表地址赋值给vptr

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值