auto是在C++11标准中引入的类型说明符,由编译器来确定auto变量的类型。
1 auto基本用法
在以下代码中
int i = 1;
int j = 2;
auto k = i + j;
当编译程序时,auto类型的变量k被编译器看做int类型。
由于auto类型是通过初始值来判断类型的,所以在定义auto类型的变量时,必须对其进行赋初值。
2 auto与const
在以下代码中
int i = 1;
const int ci = i;
auto a = ci;
此时,a的类型被判断为int,而不是const int,因此可以对a的值进行修改。
可以使用如下方法将auto类型定义为const:
const auto ca = i;
此时,无法对ca的值进行修改。
3 auto与引用
在以下代码中
int i = 1;
const int ci = i;
auto &ra = ci;
与“2 auto与const”中提到的不同,此时ra的类型是const int的引用,此时无法对ra的值进行修改。