| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 706 人关注过本帖
标题:关于析构函数的问题?
只看楼主 加入收藏
newyj
Rank: 2
等 级:新手上路
威 望:3
帖 子:542
专家分:0
注 册:2008-1-4
收藏
 问题点数:0 回复次数:6 
关于析构函数的问题?
为什么析构函数在释放内存时 要 按成员在类中声明次序的逆序来释放
搜索更多相关主题的帖子: 函数 
2008-03-24 21:16
sunkaidong
Rank: 4
来 自:南京师范大学
等 级:贵宾
威 望:12
帖 子:4496
专家分:141
注 册:2006-12-28
收藏
得分:0 
把你的例子贴出来呢

学习需要安静。。海盗要重新来过。。
2008-03-24 22:03
newyj
Rank: 2
等 级:新手上路
威 望:3
帖 子:542
专家分:0
注 册:2008-1-4
收藏
得分:0 
不好意思  这是 primer 上的一个语句 并没有什么例子
就是不知道为什么 要逆序释放
那顺序释放为什么不行
2008-03-24 22:11
zjl138
Rank: 1
等 级:新手上路
威 望:1
帖 子:788
专家分:0
注 册:2007-11-12
收藏
得分:0 
你问的是什么问题呢?
你说的应该是一个规定的,有规矩才成方圆,这样才不会在析构时乱了套。
另外,析构函数(destructor) 与构造函数相反,先构造当然理应最后析构,当然有很多例外,比如静态对象,临时对象的析构。。。。。。。
个人理解。。。。。。
THANKS

i like linux...
2008-03-24 22:16
sunkaidong
Rank: 4
来 自:南京师范大学
等 级:贵宾
威 望:12
帖 子:4496
专家分:141
注 册:2006-12-28
收藏
得分:0 
对于这类问题primer上有。。。如果你指的是单纯数据成员是没必要的。。如果你释放指针那是必须的避免内存泄露。。。。

学习需要安静。。海盗要重新来过。。
2008-03-24 22:42
aipb2007
Rank: 8Rank: 8
来 自:CQU
等 级:贵宾
威 望:40
帖 子:2879
专家分:7
注 册:2007-3-18
收藏
得分:0 
[bo]以下是引用 [un]newyj[/un] 在 2008-3-24 21:16 的发言:[/bo]

为什么析构函数在释放内存时 要 按成员在类中声明次序的逆序来释放


比如你现在要清理两个东西 a,b
在构造时a先于b,(假设b的构造是基于a的)
那么析构时如果先清理a,那么b在清理时就出问题了,因为a已经不存在了。

道理就是这样,不过这样的事情是编译器在处理而不是你。

Fight  to win  or  die...
2008-03-25 00:14
newyj
Rank: 2
等 级:新手上路
威 望:3
帖 子:542
专家分:0
注 册:2008-1-4
收藏
得分:0 
谢谢 楼上几位的解答 谢谢了
2008-03-25 10:50
快速回复:关于析构函数的问题?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.039683 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved