C++中的register变量

来源:互联网 发布:apm地面站软件下载 编辑:程序博客网 时间:2024/05/22 05:11

用register说明的局部变量称为寄存器变量,该变量将可能以寄存器作为存储空间。

register说明仅能建议(而非强制)系统使用寄存器,这是因为寄存器虽然存取速度快,但个数有限,当寄存器不够用时,该变量仍按auto变量处理。

一般在短时间内被频繁访问的变量置于寄存器中可提高效率。不过并不建议经常使用register变量,理由如下。

1. 在许多情况下使用register变量效果并不明显;

2. 有些版本的C++编译系统具有对局部变量按某种策略自动决定可否占用可用寄存器的功能,效果比程序员决定可能要好一些;

3. 局部变量存于寄存器时它将没有内存地址,可能影响与寻址有关的操作,如寻址运算符&的操作。

1 0
原创粉丝点击