类的大小解析中类的大小详解 .docx
《类的大小解析中类的大小详解 .docx》由会员分享,可在线阅读,更多相关《类的大小解析中类的大小详解 .docx(6页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精品名师归纳总结1、空类的 sizeof 是1。空类是指没有成员的类,类中的函数不占空间, 除非是虚函数。如: class Apublic:AAvoid fun;sizeofA 是1.注: class A1public:A1A1void funchar a0;sizeofA1 也是1.( VC6.0 下编译)可编辑资料 - - - 欢迎下载精品名师归纳总结2、如类中包含成员,就类对象的大小只包括其中非静态成员经过对齐所占的空间,对齐方式和结构体相同。如:class Apublic:int b;float c;char d;sizeofA 是12. 文档收集自网络, 仅用于个人学习class A
2、public:static int a;int b;float c;char d;sizeofA 是12. 文档收集自网络,仅用于个人学习class Apublic:static int a;int b;float c;char d;int addint x,int yreturn x+y;sizeofA 也是 12. 文档收集自网络,仅用于个人学习3、如类中包含虚函数, 就无论有几个虚函数, sizeof 类都等于 sizeof 数据成员 的和+sizeofV 表指针,为 4,如: 文档收集自网络,仅用于个人学习class Basepublic:BasecoutBase-ctorendl;B
3、asecoutBase-dtorendl;int a;virtual void fint coutBase:fintendl;virtual void fdoublecoutBase:fdoubleendl;文档收集自网络,仅用于个人学习sizeofBase 为8.4、对于子类,它的 sizeof 是它父类成员(无论成员是 public 或 private , 再加上它自己的成员,对齐后的sizeof ,如: 文档收集自网络,仅用于个人学习class A2public:int a;private: char b; 文档收集自网络,仅用于个人学习class A3:public A2public:
4、char b; short a; 文档收集自网络,仅用于个人学习可编辑资料 - - - 欢迎下载精品名师归纳总结sizeofA3 是8. 但假如 A3 如下:class A3:public A2public:short a; char b; 文档收集自网络,仅用于个人学习sizeofA3 是12.5、对于子类和父类中都有虚函数的情形,子类的sizeof 是它父类成员(无论成员是 public 或 private ,再加上它自己的成员, 对齐后的 sizeof , 再加4(虚表指针)。如: 文档收集自网络,仅用于个人学习class Basepublic:BasecoutBase-ctorendl
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 类的大小解析中类的大小详解 大小 解析 详解
限制150内