2014-09-24 77 views
2

在這種情況下,在cpp文件中創建類Binary的默認和重載構造函數的正確方法是什麼?類的構造函數和元素

binary.h 
class Binary { 
private: 
    struct BinaryNode { 
     int degree; 
     BinaryNode* next; 
     BinaryNode(int d, BinaryNode* n) : degree(d), next(n) {} 
    }; 
    BinaryNode *firstTerm; 
public: 
Binary() { firstTerm = nullptr; } 
} 

我不是最好的與cpp,我不知道如何寫它沒有得到錯誤。 我一直在試圖類似以下的事情:

binary.cpp 
Binary::BinaryNode(){ 

} 

所有我需要做的是訪問的程度和未來cpp文件中。我知道這不是很複雜,但我還沒有圍繞一個類的結構元素進行封裝。

回答

4

我想你想:

Binary::BinaryNode::BinaryNode() 
{ 
    /* Constructor Body */ 
} 

這意味着,這是類二元結構內的BinaryNode構造。

+0

是當前結構實際上也是一個默認結構?它只需要在cpp文件中使用重載構造函數嗎? – JRW2252 2014-09-24 19:12:39

+0

@ JRW2252我不確定你在問什麼。以上稱爲默認構造函數。你可以在'.h'文件中聲明它,並在'.cpp'文件中定義它(就像這個答案一樣)。 – 0x499602D2 2014-09-24 19:33:22

0

使用這個..

二進制:: BinaryNode :: BinaryNode(INT d,BinaryNode * N):度(d),下一個(N) {

}