类字节大小,字节对齐相关
2015-12-08 23:25
239 查看
1、空类为1字节,虚函数指针为4字节(字节按double对齐时为8字节),子类在父类的字节大小上面累加
class B { double a; //8字节 int b; public: virtual ~B(){ cout << "B::~B()" << endl; } }; class D : public B { int i; int j; public: virtual ~D() { cout << "D::~D()" << endl; } }; int main(void) { cout << "sizeB:" << sizeof(B) << " sizeD:" << sizeof(D) << endl; B *pb = new D[2]; delete[] pb; return 0; }
类B按8字节对齐,类D按4字节对齐,所以sizeof(B): 24 sizeof(D):32
<span style="font-family: Arial, Helvetica, sans-serif;">#pragma pack(1)</span>
在B类前面加上#pragma pack(1)时,则按1字节对齐, <span style="font-family: Arial, Helvetica, sans-serif;">所以sizeof(B): 16 sizeof(D):24
相关文章推荐
- 分治与递归法:全排列问题
- 安装最新Mysql community server 5.7.10社区版的坑爹经历
- 九度OJ 1360:乐透之猜数游戏 (递归)
- Python List 、 tuple和dict
- java面向对象-多态
- 【PCB】扫盲总结
- 第三个Sprint冲刺第二天
- 九度OJ 1360:乐透之猜数游戏 (递归)
- Docker介绍以及Registry的安装 -摘自http://dockone.io/article/108
- epoll的理解
- 2016年宜昌楼市将迎来史上最激烈一战
- 庸俗十态
- 第三个spring冲刺第2天
- swift 学习之UISegmentedControl
- Android Studio使用单元测试
- python numpy 模块学习
- .net中对象序列化技术浅谈
- 北大资源重磅来宜--宜昌未来商业中心将诞生
- SQL Developer Connect to MySQL
- python第三天---collections类