【发布时间】:2019-06-26 11:24:03
【问题描述】:
这是来自文章Why not specialize function templates?的代码
template<class T>
void f(T); // (1)
template<class T>
void f(T*); // (2)
template<>
void f<>(int*); // (3)
我的问题是关于最后的声明。该语法是什么意思?当我们想要完全特化一个函数模板时,例如(1)、对于某些我们通常写的类型:
template<>
void f<int>(int);
即我们将该类型放在函数名称后面的尖括号中。
那么语法(3)是什么意思?
【问题讨论】:
标签: c++ templates template-specialization