2.5.1 类型别名
传统方法使用typedef
typedef double wages;//wages是double的同义词 typedef wages base ,*p;//base是double的同义词,p是double*的同义词
新标准规定了一种新方法:别名声明
using SI = Sales_item; //SI是Sales_item的同义词
typedef char *pstring;
pstring代表char*
2.5.2 auto类型说明符
auto让编译器通过初始值来推算变量的类型。
auto a = b + c;
通过b,c的类型推算a的类型。
auto i =0, pi = 3.14;
错误:i和pi的类型不同
2.5.3 decltype类型指示符
decltype(f()) sum = x;//sum的类型就是f()返回的类型
const int ci = 0, &cj = ci; decltype(cj) z;//错误:cj是一个引用,z需要初始化
decltype(*p)的结果类型是&int