C++ 结构体

struct 结构体

  1. 赋值-同类型:同类型一共就两种情况
    1. 同类型:Memory copy
    2. 同类型:Typedef
    3. 内存布局就算是一样也不认为是相同的。
  2. alignment:一般是指内存对齐(存在于大多数编程语言中)
    1. 契合硬件
    2. 提升效率
  3. 我们使用参数传递
  4. C++向前兼容,class不写访问权限,全部都是private,struct不写访问权限,全部都是public
  5. struct也可以被理解成为类
  6. 结构体是按名访问
  7. typedef:是重命名
struct B
{
    char  b; //1
    int   a; //4
    short c; //2
};
cout << sizeof(B);//12
//为什么是12,是因为内存空间对齐,提高内存访问效率
//可关闭
__declspec(align(8))
#pragma pack(n)
//可以调整内存布局,将c和b整合到一起,然后B就是大小为8
  1. 使用pack可以让其摒弃用存储空间换取时间的做法,将空间尽可能的利用起来。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值