虚函数表和虚函数表指针的创建时机
参考答案
结论:虚函数表在编译时创建,虚函数表指针在对象构造时(运行时)设置。要点:虚函数表(vtable)由编译器在编译期为每个有虚函数的类生成静态表,存于只读数据段,存放虚函数地址;虚函数表指针(vptr)在对象实例化调用构造函数时由编译器插入代码初始化,指向所属类vtable;子类构造时先父类构造(vptr暂指父类表)再子类构造(改为子类表);多继承对象含多个vptr对应不同基类子表。原理:基于vptr-vtable机制实现运行时多态动态派发。
题目整理自公开面经,答案由校招宝自研生成,仅供参考