1.auto可以修饰各种类型的变量,然后在编译阶段,将变量类型推导出来,进行替换。
int a = 10; auto b = &a; auto c = 'a'; auto d = TestAuto; cout << typeid(b).name() << endl; cout << typeid(c).name() << endl; cout << typeid(d).name() << endl; //auto e;无法通过编译,使用auto定义变量时,必须对其进行初始化。
int x = 10; auto y = &x; auto* p = &x; //auto * p = x;无法通过编译*p与x类型不同。 auto& z = x; cout << typeid(y).name() << endl; cout << typeid(p).name() << endl; cout << typeid(z).name() << endl;
2.在同一行声明多个变量,变量类型需要相同,否则编译会报错。
auto a = 1.0, b = 5.5;
3.auto不能作为函数参数
4.auto不能直接来声明数组
5.范围for
int array[] = { 1,2,3,4,5,6 };
for (auto e : array)//与for(int e =0;e


