auto关键字
auto为对变量类型推导的关键字
// auto可用于迭代器类型推导,还包括
auto i = 5; // 推导i为int类型
auto arr = new aotu5(); // arr被推导为int*
// auto不能用于函数传参数
// auto不能用于推导数组类型
auto还可以用于函数返回值类型推导
template<typename T, typename U>
auto add3(T x, U y)
{
return x + y;
}
delctype
delctype可以对表达式进行类型推导,用法和typeof类似;
auto x = 1;
auto y = 2;
delctype (x + y) z;
if (is_same<delctype(x), delctype(z)>::value)
{
cout << "type z == type x" << endl;
}