继承的对象模型
1)创建派生类对象时,先调用基类的构造函数,再调用派生类的构造函数。
2)销毁派生类对象时,先调用派生类的析构函数,再调用基类的析构函数。如果手工调用派生类的析构函数,也会调用基类的析构函数。
3)创建派生类对象时只会申请一次内存,派生类对象包含了基类对象的内存空间,this指针相同的。
4)创建派生类对象时,先初始化基类对象,再初始化派生类对象。
5)在VS中,用cl.exe可以查看类的内存模型。
6)对派生类对象用sizeof得到的是基类所有成员(包括私有成员)+派生类对象所有成员的大小。
7)在C++中,不同继承方式的访问权限只是语法上的处理。
8)对派生类对象用memset()会清空基类私有成员。
9)用指针可以访问到基类中的私有成员(内存对齐)。
原文链接: https://www.cnblogs.com/tgfoven/p/17132665.html
欢迎关注
微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍
原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/318921
非原创文章文中已经注明原地址,如有侵权,联系删除
关注公众号【高性能架构探索】,第一时间获取最新文章
转载文章受原作者版权保护。转载请注明原作者出处!