9.2.2 自动存储持续性(3)
3.寄存器变量
关键字register最初是由C语言引入的,它建议编译器使用CPU寄存器来存储自动变量:
这旨在提高访问变量的速度。
在C++(www.cppentry.com)11之前,这个关键字在C++(www.cppentry.com)中的用法始终未变,只是随着硬件和编译器变得越来越复杂,这种提示表明变量用得很多,编译器可对其做特殊处理。在C++(www.cppentry.com)11中,这种提示作用也失去了,关键字register只是显式地指出变量是自动的。鉴于关键字register只能用于原本就是自动的变量,使用它的唯一原因是,指出程序员想使用一个自动变量,这个变量的名称可能与外部变量相同。这与auto以前的用途完全相同。然而,保留关键字register的重要原因是,避免使用了该关键字的现有代码非法。