- 博客(4)
- 资源 (6)
- 收藏
- 关注
原创 c++空类实例大小不是0原因
初学者在学习面向对象的程序设计语言时,或多或少的都些疑问,我们写的代码与最终生编译成的代码却 大相径庭,我们并不知道编译器在后台做了什么工作.这些都是由于我们仅停留在语言层的原因,所谓语言层就是教会我们一些基本的语法法则,但不会告诉我们为什么这么做?今天和大家谈的一点感悟就是我在学习编程过程中的一点经验,是编译器这方面的一个具体功能. 首先:我们要知道什么是类的实例化,所谓类的实例化就是在内存中分
2009-11-01 20:09:00 975 1
原创 结构体内存分配对齐策略
Win32平台下的微软C编译器(cl.exe for 80×86)的对齐策略:1) 结构体变量的首地址是其最长基本类型成员的整数倍;备注:编译器在给结构体开辟空间时,首先找到结构体中最宽的基本数据类型,然后寻找内存地址能是该基本数据类型的整倍的位置,作为结构体的首地址。将这个最宽的基本数据类型的大小作为上面介绍的对齐模数。2) 结构体每个成员相对于结构体首地址的偏移量(offse
2009-10-31 23:03:00 1446
原创 C++中一个空类的大小为什么是1
深度探索c++对象模型中是这样说的: 那是被编译器插进去的一个char ,使得这个class的不同实体(object)在内存中配置独一无二的地址。 也就是说这个char是用来标识类的不同对象的 参考资料:深度探索c++对象模型
2009-10-31 22:32:00 1372 2
原创 一个类的实例化对象所占空间的大小?
一个类的实例化对象所占空间的大小? 注意不要说类的大小,是类的对象的大小. 首先,类的大小是什么?确切的说,类只是一个类型定义,它是没有大小可言的。 用sizeof运算符对一个类型名操作,得到的是具有该类型实体的大小。 如果 Class A; A obj; 那么sizeof(A)==sizeof(obj) 那么sizeof(A)的大小和成员的大小总和是什么关系呢,很简单,一个对象的大小大于等于所有
2009-10-31 21:59:00 3674 2
用vc++6.0和SQLSEVER2000开发客户资源管理系统
2009-09-20
直接排序法,折半插入法,希尔排序法,快速排序法(c语言实现)
2009-06-12
编译hello world嵌入式设备驱动程序详细过程.rar
2009-05-17
《C++编程艺术》一本揭示编程艺术的书
2009-04-23
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人