在学习结构体/类中的成员在内存中的存储方式(字节对齐)时,突发奇想想探究探究先后实例化的对象在内存中的存储方式。
结果出现相同结构体或类 实例化的对象在内存中并不连续排序。
```C++
#include
using namespace std;
class peopleTheSomeInfo
{
public:
short age;
int bodyHeight; //此时peopleTheSomeInfo占12字节-情况一
//double bodyHeight; //此时peopleTheSomeInfo占24字节-情况二
short bodyWeight;
//初始化变量
peopleTheSomeInfo() {
age = 0;
bodyHeight = 0;
bodyWeight = 0;
}
};
int main() {
cout << sizeof(peopleTheSomeInfo)<//
peopleTheSomeInfo A;
A.age = 22;
A.bodyHeight = 175;
A.bodyWeight = 60;
peopleTheSomeInfo B;
B.age = 50;
B.bodyHeight = 170;
B.bodyWeight = 80;
cout << "" << endl;
}
```
情况一 int bodyHeight; 一行12个字节
情况二 double bodyHeight;一行24个字节
对象和对象在内存上直接是没有直接关系的
这个是用户透明的,看编译器和底层系统怎么写