首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >返回指针变为garbage...c++

返回指针变为garbage...c++
EN

Stack Overflow用户
提问于 2017-02-26 15:16:26
回答 1查看 89关注 0票数 3
代码语言:javascript
复制
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;
};

我的问题是,在做完递归过程后,当它点击"return new node“时,返回的值变成了垃圾。我不知道为什么,有什么提示或解决方法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-02-26 15:19:46

new_node正在引用局部变量中的元素( vector作为复制参数传递)。尝试将其作为引用进行传递。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42465790

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档