编译器错误 C2768
“function”: 非法使用显式模板参数
备注
编译器无法确定某个函数定义应该是某个函数模板的显式专用化,还是新函数。
此错误是在 Visual Studio .NET 2003 中引入的,属于编译器一致性增强的一部分。
示例
以下示例生成 C2768:
// C2768.cpp
template<typename T>
void f(T) {}
void f<int>(int) {} // C2768
// an explicit specialization
template<>
void f<int>(int) {}
// global non-template function overload
void f(int) {}