template<typename T1, typename T2>
void addx(T1 t1, T2 t2)
{
//auto flag = is_same_v<T1, string>;
typedef conditional_t<is_same_v<T1, string>, int, string> TT;
TT t = "abc";
}
测试代码:
addx<int>(1, 2);
is_same_v判断两个类型是否相同
conditional_t<flag, value1, vlaue2>
根据flag的值,如果是true,取value1,如果是false,则取value2