在泛型编程中,可能需要通过参数的运算来得到返回值类型。
语法:
auto func(参数1,参数2,...)->decltype(参数表达式)
代码如下:
#include <iostream>
using namespace std;//template<typename R,typename T,typename U>
//R add01(T t, U u)
//{
// return t + u;
//}template <typename T,typename U>
auto add(T t, U u)->decltype(t+u)
{return t + u;
}int main()
{int x = 520;double y = 13.14;auto ret = add<int, double>(x, y);auto ret01 = add(x, y);cout << ret << endl;cout << ret01 << endl;return 0;
}