![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++笔记
文章平均质量分 79
LIANG_1998
厚积薄发,先苦后甜
展开
-
C++中的结构体/类的内存对齐
有效对其值: 是给定值#pragma pack(n)和结构体中最长数据类型长度中较小的那个。有效对齐值也叫对齐单位。- 第一个成员在与结构体变量偏移量为 0 的地址处,以后每个成员相对于结构体首地址的 offset 都是该成员大小与有效对齐值中较小那个的 整数倍,如有需要编译器会在成员之间加上填充字节。- 结构体的总大小为 成员中最大有效对齐值的整数倍,如有需要编译器会在最末一个成员之后加上填充字节。- 如果嵌套了结构体的情况,嵌套的结构体对齐到自己的最原创 2023-08-11 22:35:50 · 89 阅读 · 1 评论 -
C++中的默认构造函数、拷贝构造函数、移动构造函数
当类成员函数有指针时,对象A执行拷贝构造函数 拷贝B的数据内容,当执行浅拷贝时,仅仅是将B对象的指针成员所指向的值(地址)赋值给了A中的指针成员,此时A与B中的指针成员指向同块内存,当B销毁时,A中的指针成员就变成了野指针,会导致意想不到的错误。如果定义了构造函数则C++不会提供默认构造函数,如果希望创建对象时不显示的进行初始化,则必须显示的定义默认构造参函数,不带任何参数,并在函数内部进行成员的赋值操作;复制构造函数的形参为该类型的对象的引用,作用是用一个已存在的对象初始化同类型的新的对象;原创 2023-08-03 21:07:54 · 257 阅读 · 0 评论