假定多层继承的各类之间的关系如下图。假定派生类不override基类的虚函数,即Base2不override Base1中声明的虚函数vfBase1(),Base3不override Base2中声明的虚函数vfBase2(),Derived不override Base3中声明的虚函数vfBase3()。
代码如下
运行结果:
Derived对象的memory layout图解如下:
(注意:单重继承只有一个虚函数表)
假定多层继承的各类之间的关系如下图。假定派生类不override基类的虚函数,即Base2不override Base1中声明的虚函数vfBase1(),Base3不override Base2中声明的虚函数vfBase2(),Derived不override Base3中声明的虚函数vfBase3()。
代码如下
运行结果:
Derived对象的memory layout图解如下:
(注意:单重继承只有一个虚函数表)