此刻,我正在驾车弯道。作为一个自制的练习,我想在一个类中模拟一个递归调用。在.h文件我有:模板递归函数的语法是什么?
template <typename T1>
class BinaryTree
{
public:
BinaryTree(T1 element);
~BinaryTree();
BinaryTree* addLeftLeaf(BinaryTree<T1>* node);
等等
然后在.cpp
template <typename T1> BinaryTree* BinaryTree<T1>::addLeftLeaf(BinaryTree<T1>* node)
{
return node;
}
我试过的想法看似负载,但迄今一无所获。只是错误,如错误C2955:'BinaryTree':使用类模板需要模板参数列表
任何建议,将不胜感激。
感谢
马克
错误是返回类型不是模板。但是模板代码(通常)需要在头文件中。所以把整个事情放在类定义里面,问题就会消失。 – 2012-01-19 00:06:17