是否可以定义两个不同的模板类(通过模板参数数量)并使用相同的名称?
这是我正在尝试做的事情:
namespace MyNamespace
{
template<class TRet>
class FunctionObject
{
typedef typename TRet ReturnType;
virtual ReturnType const operator()() const = 0;
};
template<class TRet, class TArg0>
class FunctionObject
{
typedef typename TRet ReturnType;
typedef typename TArg0 FirstArgumentType;
virtual ReturnType const operator()(FirstArgumentType const &arg) const = 0;
};
}
在第二个FunctionObject
结构定义的闭合括号末尾,我收到一个提到模板参数过多的错误。
我知道在C#中可以完成这个操作,但不确定在C++中是否可以。有人能否解释一下?