鱼C论坛

 找回密码
 立即注册
查看: 2494|回复: 3

[技术交流] C++

[复制链接]
发表于 2012-2-16 11:54:13 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
昨天看书时,看到解析函数,说是什么程序结束之前要执行这个,那想问一下,程序怎么知道快要结束了啊?有没有通过函数调用,解析函数就可以运行……有些不解。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-2-16 14:28:35 | 显示全部楼层
对象生存期完了就会调用析构的 而不是程序结束 程序结束也不代表一定会调用每个对象的析构函数
如果你对象本身就是在堆里 而你没释放 就不会调用析构函数的
比如局部对象出作用域 就会调用析构函数的
可以显示调用 对象.~类()
对象里如果有用申请内存空间 执行析构才有意义的
如果用delete释放内存会先调用析构的
new申请内存则先申请内存再调用构造
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2012-2-28 12:19:13 | 显示全部楼层

嗯,谢谢了。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2012-2-28 12:21:01 | 显示全部楼层
ccqiji 发表于 2012-2-16 14:28
对象生存期完了就会调用析构的 而不是程序结束 程序结束也不代表一定会调用每个对象的析构函数
如果你对象 ...

嗯,谢谢了。那麻烦问一下,计算机怎么知道对象生存周期快要结束了啊?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-3-29 01:37

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表