不使用Boost,如何编写如下函数:
template<typename T>
void myFunc(T t)
{
...
}
template<>
void myFunc(someclass<T> t)
{
myFunc(t.get());
}
更新:我可能已经对此进行了分析。当我想要原版
时,我很困惑template<typename T>
void myFunc(T t)
{
...
}
使用矢量。我想我很困惑,因为在模板函数的特化中你省略了typename参数,我认为我还需要T。
似乎其中一个答案可能已经奏效。
答案 0 :(得分:2)
不确定为何将Boost与此相关联。无论如何:
这不起作用,因为此处不存在T
。
template<>
void myFunc(someclass<T> t);
你的意思是:
template < typename T >
void myFunc(someclass<T> t);