C++对象模型之简述C++对象的内存分布(二)

2015-11-21 01:01:30 · 作者: · 浏览: 18
除之。

4)多重虚拟继承(使用virtual方式继承,为了保证继承后父类的内存布局只会存在一份)
类的继承关系如下:
class Base1 : virtual public Base
class Base2: virtual public Base
class Derived : public Base1, public Base2
\
Derived类的对象的内存布局与重复继承的类的对象的内存分布类似,但是基类Base的子对象没有拷贝一份,在对象的内存中仅存在在一个Base类的子对象。但是它的非static成员变量放置在对象的末尾处。