if (std::is_same<T, float>::value)
{
float a;
somefunc_float(x,len,&a);
}
上面的代码来自一个模板,它接受一个指针 x,它可以是一些原始数据类型的指针(例如 x 是double *, float *or int *),并且somefunc_float来自一个库,只能接受一个特定的数据类型x(float *在上面的例子中),编译器总是给我错误,告诉我输入数据类型(x)不正确,好像表达式std::is_same<T, float>::value根本不起作用?