当我们给变量声明时,通常采用int,或者double等整型或者浮点类型来声明,例如int a; double b;等。
当我们遇见一个常量,也可以用另外一种方法进行声明。——在C++11后方能使用。但是怎么知道是不是C++11……
那就是auto,例如 auto a=1; 当使用auto的时候,编译器会根据值自动赋予类型。比如auto a=1;时,变量a就会被赋予类型int。
auto的作用,就是根据初始值的类型推断变量的类型。在使用auto的时候,如果没有指定变量的类型,那么编译器会把变量的类型设置为和初始值相同。
简单的来说:
auto a=1; 变量a类型为int auto b=2.0; 变量b类型为double auto c=3.1L; 变量c类型为long double——因为后缀加L表示是long double类型 auto d=4.333F; 变量d类型为float——因为后缀加F(f)表示是float类型
注意:auto a=0; 的时候,变量a的类型为int
按照说明,auto在处理简单变量的时候,使用的意义并不大,只有在处理复杂变量的时候,例如一个很复杂的算术式的结果,才有很大的作用。
原文是:处理复杂类型,如标准模块库(STL)中的类型时,自动类型推断的优势才能显现出来。
——不明觉厉……也许遇见了就懂了