免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 3153 | 回复: 15
打印 上一主题 下一主题

拷贝构造函数与析构函数的关系 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-08-23 20:29 |只看该作者 |倒序浏览
当通过一个类的对象去初始化另一个类对象时,调用拷贝构造函数,如果没有定义拷贝构造函数则调用默认的,
那么,函数结束时,是不是也得调用该类的析构函数啊??

论坛徽章:
0
2 [报告]
发表于 2008-08-23 20:40 |只看该作者
嗯, 是的, 是会调用析构函数. 你自己的贴子中的代码就可以解释这个问题啊.
http://bbs.chinaunix.net/viewthread.php?tid=1248798

论坛徽章:
0
3 [报告]
发表于 2008-08-23 21:06 |只看该作者
原帖由 scutan 于 2008-8-23 20:40 发表
嗯, 是的, 是会调用析构函数. 你自己的贴子中的代码就可以解释这个问题啊.
http://bbs.chinaunix.net/viewthread.php?tid=1248798

是的 我就是从那个帖子得出的结果,但是不太敢肯定
谢谢了

论坛徽章:
0
4 [报告]
发表于 2008-08-23 21:35 |只看该作者
函数结束时,不一定非得调用该类的析构函数

论坛徽章:
0
5 [报告]
发表于 2008-08-23 21:52 |只看该作者
原帖由 0vk0 于 2008-8-23 21:35 发表
函数结束时,不一定非得调用该类的析构函数


能否举一个例子, 谢谢!

论坛徽章:
0
6 [报告]
发表于 2008-08-23 21:58 |只看该作者
原帖由 0vk0 于 2008-8-23 21:35 发表
函数结束时,不一定非得调用该类的析构函数

  你应该是修改了编译器吧?

论坛徽章:
0
7 [报告]
发表于 2008-08-23 22:01 |只看该作者
原帖由 system888net 于 2008-8-23 21:58 发表

  你应该是修改了编译器吧?


其实我没看得太懂 当函数结束时调用该类的析构函数是啥意思?
函数 ----- 类 这如何联系起来?。。。

如果是堆上的对象 函数结束和它没啥关系啊。。。

[ 本帖最后由 blizzard213 于 2008-8-23 22:10 编辑 ]

论坛徽章:
0
8 [报告]
发表于 2008-08-23 22:09 |只看该作者
原帖由 blizzard213 于 2008-8-23 22:01 发表


其实我没看得太懂 当函数结束时调用该类的析构函数是啥意思?
函数 ----- 类 这如何联系起来?。。。

如果是栈上的对象 函数结束和它没啥关系啊。。。


LZ 没有说的太清楚,我理解应该是在一个类的函数里实例化了另外一个类,那么就是局部的,当这个函数退出时,必然要销毁这个类,当然也有例外(如: static ).

论坛徽章:
0
9 [报告]
发表于 2008-08-23 22:16 |只看该作者
原帖由 system888net 于 2008-8-23 22:09 发表


LZ 没有说的太清楚,我理解应该是在一个类的函数里实例化了另外一个类,那么就是局部的,当这个函数退出时,必然要销毁这个类,当然也有例外(如: static ).


呵呵, 对的, 我刚刚没有考虑到static的情况.

论坛徽章:
0
10 [报告]
发表于 2008-08-23 22:31 |只看该作者
构造函数和解析构函数是互逆的。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP