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

浅拷贝中遇到的问题

在浅拷贝实践篇中,我跟老师打的几乎都一样,除了后面少了一句system(“pause”);然后得出来的结果就比老师演示的结果多打印了两个析构函数在后面,即如下:

Array()

Array &

arr2.m_iCount: 5

~Array()

~Array()

谁能告诉我这是为什么?

正在回答

2 回答

老师的暂停在程序退出之前,这个时候两个实例化的对象还没有被销毁。如果不加暂停,程序直接从实例化到销毁运行过去了,在最后就会把~Array打印出来。

可以尝试在不同的地方加入system("pause");玩玩看

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

打上system("pause")之后呢,是不是就跟老师的一样了,,没有system(“pause”),应该是程序自动退出,之后销毁两次实例,所有多出来了两个析构函数的打印文本

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

举报

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

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

进入课程

浅拷贝中遇到的问题

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