|
|
1
37
这个
例如:
上面的代码打印出来
正如你所看到的,首先是一个
|
|
|
2
6
|
|
|
3
5
这并不矛盾。 在使用指向函数的指针的部分中,可以创建具有地址的非内联版本。 |
|
|
4
3
函数的内联扩展没有地址,但如果该函数有静态变量,则该变量确实有地址。静态变量基本上只是一个全局变量 名称 仅在本地可见(即,在其定义的范围内)。内联函数中的其他变量可能在堆栈上分配(就像它没有内联扩展时一样),或者它们可能只存在于机器寄存器中。重要的一点是,它们仍然是独立的变量,并且必须像函数没有被内联扩展一样工作(不像宏,例如宏,在宏中需要非常小心,以防止多个求值引起问题)。 |
|
|
5
0
它们可能在某些调用位置内联,但它们仍然作为普通函数存在于地址空间中。 |
|
|
6
0
我认为您混淆了内联函数对象代码的位置和内联的含义。通常,我们将内联函数可视化为放在源代码级别的调用函数中。这本书所说的是,变量名,包括内联函数中静态的使用,被视为与函数实际上是典型的独立函数一样。 此外,使用inline关键字处理函数并不能保证它们是内联的,对于不能内联的情况(例如需要地址时),将生成非内联版本。 |
|
AstralHex · 矩阵乘法代码工作不正常 1 年前 |
|
|
Fishie · 作为类成员的智能指针是否仍然自动释放?[关闭] 1 年前 |
|
|
Die4Toast · 递归调用成员箭头运算符-> 1 年前 |
|
|
Anka Hanım · 关于结构和动态数组地址的问题 1 年前 |