2013-07-09 88 views
1

错误:'TrieNode ::母公司具有不完整的类型
如何解决这个问题?请帮我

TrieNode.hC++模板的成员变量错误

template <typename T> 
    class TrieNode { 

    public: 
     char subStr; 
     list<TrieNode> childs; 
     TrieNode<T> parent;  // error 
+0

你不能在'TrieNode'类'TrieNode'除非它是一个指针或引用 – aaronman

+1

@aaronman,或参考。 – chris

+0

@aaronman和克里斯它不会产生任何错误,我 – banarun

回答

4

你可能想父母是指向一个TrieNode而不是一个实例。

template <typename T> 
class TrieNode { 

public: 
    char subStr; 
    list<TrieNode> childs; 
    TrieNode<T> *parent; 
    ... 

正如你目前实施的东西TrieNode<T>将包含一个char +列表+ TrieNode<T>,这是说,这将是无限大。

+0

感谢您的回复,这对我很有帮助! –