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