C++一个函数的参数为一个指针,指针指向了函数体内一个临时变量,如何在函数结束之后仍然能获得该临时变量的值(函数没有返回值)
int main()
{
BinaryTreeNode<int> *b=new BinaryTreeNode<int>;
make(b);
cout<<b->data<<endl;//得不到make方法之后b的data
}
void make(BinaryTreeNode *b)
{
BinaryTreeNode<int> *c=new BInaryTreeNode<int>(2);//临时变量
b=c;
}
再看一次题
追答你的B都分配过一次内存了,在函数里又分配,
把make的函数定义改成make(BinaryTReeNode* &b)