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

为什么会执行6次的,而且还是分开单独打的

http://img1.sycdn.imooc.com//58303c5c0001ed7f02570292.jpg

Coordinate执行了6次。

正在回答

2 回答

谁说析构函数只执行了一次呢?

在栈中定义的三个对象,是由系统自动执行了析构函数,在你按任意键后,很快就执行了,只是没看见而已。

而在堆中定义的三个对象,是需要手动释放内存的,每执行一次delete p,就会在黑框里显示~Coordinate().

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

要求里不是要定义6个Coordinate类嘛,所以构造函数会执行六次呀

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

杨羊k 提问者

是不是一开始创建6个对象的的时候,基类的析构函数就被调用6次,那么为什么子类的析构函数只被调用了一次呢?
2016-11-19 回复 有任何疑惑可以回复我~

举报

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

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

进入课程

为什么会执行6次的,而且还是分开单独打的

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