样例代码里面模板类型名后面的...称为模板参数包(template parameters pack), 函数参数部分类型名后面的...称为函数模板类型包(function template types...由于编译器无法在模板中推导模板参数的正确形式, 也就是模板参数的默认值在编译阶段是无法展现的....和Lambda中, 替代了旧版本中不好用的typeof
返回值: 在模板编程中, 我们不仅希望能自动推导参数类型, 还希望按照得到的类型来推导返回值, 如今可以借助尾置返回将模板函数写为下面的形式....尾置返回也是C++11新加入的特性, 其目的是让参数列表中的符号也可以在返回值推导中使用....auto Foo(T1 x, T2 y)->decltype(x+y)
{dosomething;}
TMP: 在模板元编程中, decltype主要用来自动推导参数的类型, 从而利用这个类型进行其它的变量使用