に父親ノードを設定:C++、私は以下のクラスを持っている木
class Node
{
private:
Node* leftChild;
Node* rightChild;
Node* father;
public:
Node() { leftChild = rightChild = father = NULL; };
Node* getLeftChild() { return leftChild; };
Node* getRightChild() { return rightChild; };
Node* getFather() { return father; }
void setRightChild(Node* child) { rightChild = child; }
void setLeftChild(Node* child) { leftChild = child; };
void setFather(Node* f) { father = f; };
};
左の子と右の子を設定するときに私も父のノードを設定します。私は試してみます:
void setLeftChild(Node* child)
{
leftChild = child;
child->setFather(this);
};
Node* node = new Node();
Node* node2 = new Node();
node->setLeftChild(node2);
これは誤った使用のため、ランダムエラーが発生します。どのように機能を設定する必要がありますsetLeftChild()
とsetRightChild()
? ありがとうございます。
なぜマザーノードですか?それはセクシストです。それが私たちを親と呼ぶ理由です。 *トリガされました* – arminb
エラーの詳細を教えてください。 – noelicus
**標準のコンテナである['std :: deque <>'](http://en.cppreference.com/ –