中易网

C++在函数中创建链表,怎么返回

答案:2  悬赏:80  
解决时间 2021-03-06 16:53
函数的参数是一个链表头指针,返回值就是这个处理过的指针。 但是,链表的身体部分都是在函数中创建的,一旦函数执行完毕,这些身体不就被销毁了吗? 如果用new在默认堆上创建,会被销毁吗?如果不会,那用标示符来指定delete呢?身体有关的标示符都是函数里申请的局部变量。 如果用heapalloc在新堆上创建,会被销毁吗?同上,用什么标示符来释放呢?? 这些标识符都是在函数里定义的,太多,用全局不合适,有什么好的方法吗? 求具体。 会被销毁吗? 改为: 函数结束后,会被销毁吗?
最佳答案
但是,链表的身体部分都是在函数中创建的,一旦函数执行完毕,这些身体不就被销毁了吗?
每一个结点 都是动态new或malloc出来的,不会被销毁

如果用new在默认堆上创建,会被销毁吗?如果不会,那用标示符来指定delete呢?身体有关的标示符都是函数里申请的局部变量。
结点的地址都被保存在了链表里,所以通过链表遍历,能访问每一个结点 ,一般的形式,p = p->next;这就能把p指向到下一个结点 ,只要正确的把结点地址保存到链表中,创建函数中的那些局部变量被销毁是没有任何影响的
全部回答
但是,链表的身体部分都是在函数中创建的,一旦函数执行完毕,这些身体不就被销毁了吗? 如果是临时变量,不是堆内存,是会被销毁的。 如果用new在默认堆上创建,会被销毁吗?如果不会,那用标示符来指定delete呢?身体有关的标示符都是函数里申请的局部变量。 new出来的是不会被销毁的。链表中应该有指针变量指向下一个节点,利用这个指针delete掉new出来的内存。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
淘宝服装类目该怎么投放钻展,服装的钻展图怎
为什么 usb风扇 容易坏?
阿拉伯文怎么输入
我家金毛刚刚出来是浅黄过了几个小时就变浅白
There are a few birds singing in the tree.
苹果6 有32G么?
投标。我准备去投一个建筑工程标。造价大概四
碧云茶庄我想知道这个在什么地方
存100块钱 年利率0.0425 到期利率0.04 一年后
windows的应用窗口与对话框有何不同
品味足浴在哪里啊,我有事要去这个地方
ps画矩形为什么每画一个就新建一个图层,不能
淮南大黄牛牛肉火锅我想知道这个在什么地方
男朋友叫别的女生笨蛋
iPad Pro为什么还是物理home键
推荐资讯
三个代表重要思想浅谈科学发展观
怎样表现给领导看到自己的能力
万科美邻里在哪里啊,我有事要去这个地方
下奶的牛尾冬瓜汤怎么做
瘦肉丸的制作方法?
血糖高可以用精油吗
嘉华城北门地址在哪,我要去那里办事
急求关于省份名称的◆超难◆谜语■(20分)■
假如我手上只有一套房子,卖掉了,想换另外一
豫剧佘太君辞朝选段穆桂英演唱打一杆
沙糖桔冬季施肥在什么时候
玫瑰木瓜茶有什么功效?
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?