Node* binTree::insert(vector<Node> vec, int index) {
Node* new_node = &vec[index];
Node* left_leaf=NULL;
Node* right_leaf=NULL;
if (new_node->left == -1 || new_node->right == -1)
return new_node;
if (c == 'n')
{
root = new_node;
c = 'y';
}
index = new_node->left;
new_node->left_leaf = insert(vec, new_node->left);
index = new_node->right;
new_node->right_leaf = insert(vec, new_node->right);
return NULL;
};
我的問題是,在執行遞歸過程後,當它命中「返回新節點」時,返回值變成垃圾。我不知道爲什麼,有什麼提示或修復?返回指針變成垃圾... C++
因爲你返回一個指向*局部變量*的指針。嘗試通過引用來傳遞向量。 –