有人可以帮助我了解如何使用此方法吗?
// At .h file
template<typename T>
class BTree {
public:
...
private:
struct Node {
T element;
Node* left, right;
};
Node* root;
Node* getNode();
...
};
// At .cpp file
template<typename T>
BTree<T>::BTree() {
...
}
// I am stuck on how I would get the getNode() method to work
// I know it's along the lines of...
template<typename T>
BTree::Node* BTree<T>::getNode() {
...
}
我不断收到编译错误。有没有正确的方法呢?
编辑:我的错误。我忘了将<T>
放在.cpp文件
答案 0 :(得分:0)
您不应该在header / cpp文件中拆分模板内容。这是行不通的,因为你需要编译所有T已知的cpp文件。所以这里只需编写标题代码。
返回类型&#34;指向嵌套类的指针&#34;在声明之前需要oc rollback backend
,因为它本身有一个模板参数。
typename