游啊游 发表于 2016-5-6 20:55:06

关于创建二叉树指针引用的问题

//创建一棵二叉树   输入结点时采用前序遍历的顺序

void BiTree::Creat_BiTree(BiNode *&n)
{
        char temp;
        cin>>temp;
        if('#'==temp)
        {
                n=NULL;
        }
        else
        {
                n=new BiNode;
                n->data=temp;
                Creat_BiTree(n->lchild);
                Creat_BiTree(n->rchild);
        }
}

传参时为什么用的是指针的引用?不用引用可不可以?求详解

游啊游 发表于 2016-5-7 07:58:32

求大神(`︶)

Ren赤子心 发表于 2016-5-26 22:49:09

不传引用,函数部分相当于复制了传过来的指针,这个指针修改了并不会带回,相当普通的传递参数,不会把根节点带回,传引用就会把根节点带回到主函数去。

游啊游 发表于 2016-5-27 21:38:46

Ren赤子心 发表于 2016-5-26 22:49
不传引用,函数部分相当于复制了传过来的指针,这个指针修改了并不会带回,相当普通的传递参数,不会把根节 ...

我明白了{:5_91:}

不知道叫什么 发表于 2016-5-31 13:24:00

赤子心讲的对……
另外我理解的是,传引用的话就相当于把指针的地址传了过来,直接在原地址的基础上进行的修改

游啊游 发表于 2016-5-31 17:04:31

不知道叫什么 发表于 2016-5-31 13:24
赤子心讲的对……
另外我理解的是,传引用的话就相当于把指针的地址传了过来,直接在原地址的基础上进行的 ...

指针的地址就是指针的指针 也就是双重指针呗?
页: [1]
查看完整版本: 关于创建二叉树指针引用的问题