为了账号安全,请及时绑定邮箱和手机立即绑定

析构函数的执行顺序

销毁时先执行对象成员指针的析构函数,跟之前学习的先执行对象的析构函数再执行对象成员的析构函数过程相矛盾了呀

正在回答

2 回答

不对,你在执行delete (Line对象指针)的时候就会执~Line,而类Line中的析构函数~Line中又有delete (Coordinate的对像指针)他就会先调用~Coordinate之后在打印输出“~Line”,他是cout写在了delete(Coordinate的对像指针)之后,如果是之前就会先打印,但是销毁对象的顺序还是先执行~line

0 回复 有任何疑惑可以回复我~
#1

慕粉3821588 提问者

非常感谢!
2016-11-22 回复 有任何疑惑可以回复我~

不矛盾,应该先释放指针,否则对象析构完后,我们无法释放指针啊,会发生错误


1 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C++远征之封装篇(下)
  • 参与学习       70919    人
  • 解答问题       514    个

封装--面向对象三大特征之一,通过案例让C++所学知识融会贯通

进入课程

析构函数的执行顺序

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信