2012-06-14 53 views
0

我試圖返回的左側子作爲指針二叉搜索樹(BST)再次離開孩子視爲功能,不明白

template <typename Type> 
class BSTNode { 
private: 
    int key;                
    Type data; 
    BSTNode *left; 
    BSTNode *right; 
} 

和根

template <typename Type> 
class BST {   
private: 
    BSTNode<Type> *root; 
} 

我絕對需要這個,我不能找到辦法解決它(而不是在一點時間,我已經離開)

this->root = auxRoot.getLeftChild(); 

這裏是getLeft

template <typename Type> 
BSTNode<Type> *BSTNode<Type>::getLeftChild() { 
return this->left(); 
} 

編譯錯誤:left cannot be used as a function。我做錯了什麼?

回答

3

left不是函數,而是數據成員,所以括號是非法的。它應該是:

this->left; 
+0

我覺得很尷尬。每當我累了,我都不會看到這些小東西。其實這是我用C++的主要問題,我錯過了很多'{};'。 – Kalec