【发布时间】:2017-03-23 02:28:54
【问题描述】:
如何推断模板参数表达式的类型?例如,关于以下代码:
template< typename T >
class A
{
//....
};
template< typename T_1, typename T_2 >
class B
{
auto foo()
{
return A</* Type of "T_1+T_2"*/>();
}
};
如何推断T_1+T_2的类型?例如,它可能是 T_1=float 和 T_2=int,因此,foo 应该返回 A<float>()(因为将 integer 与 float 相加得到 float)。
【问题讨论】:
标签: c++ templates arithmetic-expressions type-deduction