我正在嘗試製作一個樹模板,每個節點上可以有任意數量的子節點。這是我在節點類中的addChild功能碼 -雙指針問題
template<typename T>
void Tree<T>::Node::addChild(T& value) {
Node* temp = new Node(value, this); //second parameter is for parent
numOfChildren++;
children*[numOfChildren] = temp;
}
而不必對左,右子指針的,我想我應該做一個雙指針(指向節點*數組)。
節點**子女;
我不斷收到「預期的主要表達式'['token'錯誤之前。我想我正在訪問二維數組呢?或者,也許我應該以一種不同的方式去做?如果我剛生下孩子,你認爲它會起作用嗎?
節點*孩子 ?
我覺得它可能工作,如果我只有一個節點*,每個元素是不同的節點。
任何幫助表示讚賞。
您正在創建* B-Tree *。見http://en.wikipedia.org/wiki/B-tree。您可能想要搜索網絡上的現有示例。還搜索「平衡B樹」。 – 2011-03-03 20:10:00
我猜你想要做的是(* children)[numOfChildren](然而,如果你想要分析一個Note *,你就不能解除引用,Erik的解決方案就是要走的路線 – Philipp 2011-03-04 05:53:47