跳转到内容

C++ 编程

来自维基教科书,开放的书籍,为开放的世界

register 关键字是一个对编译器的请求,要求将指定的变量存储在处理器的寄存器中,而不是内存中,以此来提高速度,主要是因为该变量将被频繁使用。编译器可能会忽略该请求

当编译器在大多数代码优化方面比人类做得更好时,该关键字就逐渐不再使用。任何使用该关键字的有效程序在语义上都与不使用该关键字的程序相同,除非它们出现在字符串化的宏(或类似的上下文中),在这种情况下,它可能有助于确保对宏的不正确使用会导致编译时错误。此关键字与 auto 密切相关。

register int x=99;

注意
register 在 C 和 C++ 中的语义不同。在 C 中,可以通过将数组声明为 register 来禁止数组到指针的转换:register int a[1];

华夏公益教科书