【发布时间】:2013-07-08 07:49:01
【问题描述】:
接下来的两个声明有什么区别:
template<class T, class functor>
methodReturnType className::methodName(functor f)
和:
template<class T>
template<class functor>
methodReturnType className::methodName(functor f)
我正在尝试编写一个可以与仿函数 arg 一起使用的方法。 第二个声明允许我避免将整个类声明为 T 和 functor 的模板。我想要一个模板类 className 只有一个参数 T,但在该类中,一个方法有另一个参数 functor,而没有声明整个类作为两个参数的模板。 它有效,但我没有完全理解它。
【问题讨论】: