补充第七章中没提到的一些点
速记
- 栈中变量是先声明的在高地址,后声明的在低地址。
- 当成员函数参数为对象且返回对象时,先传返回的临时this,再传本对象this,再传其它参数(通过栈顶)
- 对象成员的存储顺序,对象内先声明的成员在低地址,后声明的在高地址
- 结构体数据对齐为:每个成员的地址为q(q=min(该成员类型大小,设定对齐值))的倍数。
- 空类对象有一字节的大小,为了让this有的指
- 数组与结构体为成员时,对齐不是按整体大小,按单个类型与结构体的对齐值当做成员大小去计算。这些特定编译器实现不同
- 临时对象的作用域仅限单条语句。
源码
|
|
反编译
x86-64
|
|
f
ARM-64
|
|
|
|