register 简介:
register 就像是汉语和英语中的形容词(不要问为什么只有两种语言,因为小编只会这两种),在 C++ 中 register 是用来修饰变量的。
register 的作用:
register 声明的变量是直接放在cpu的寄存器当中,而非就是通过内存寻址访问,这样就可以大大的提高程序的运行效率。
总而言之,写上不会亏。
还需要注意,register 声明变量只能在主函数或自定义内部。注意:是内部,定义在外面是会报错的。
1 for(int i=1;i<=1000000;i++)
2 {
3
4 ......
5
6 }
7
8 for(register int i=1;i<=1000000;i++)
9 {
10
11 ......
12
13 }
在第一个 for 循环中,变量 i 存储在内存中,cpu 每次要从内存中取出变量 i,这样 cpu 就要来回读取10000次,只是很低效的。
而在第二个 for 循环中,cpu每次都会直接去寄存器上读取变量i,而不用再去内存读取,因此,代码的效率也会大大提高。