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

堆实例对象和栈实例对象有什么区别呢?哪一个更常用呢?

堆实例对象和栈实例对象有什么区别呢?哪一个更常用呢?

正在回答

3 回答

说的也不一定对,是自己的理解。


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

其实除了楼上说的这个语法上的不同。

感觉还有一个生命周期的问题吧。

我们曾经学过用new在一个其他函数中返回一个新的动态数组,而用栈申请的数组就会在函数结束被删除掉。

感觉这两种实例化方法可能也是这样吧。

栈实例化:生命周期为所在的函数结束前。

堆实例化:生命周期为delete释放前或程序结束后。

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

栈实例对象:直接类名加对象名,用完可以不自己释放空间

堆实例对象:需要用指针来指向申请的空间,用完需要用delete释放空间

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

举报

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

封装--面向对象的基石,本教程力求帮助小伙伴们即学即会

进入课程

堆实例对象和栈实例对象有什么区别呢?哪一个更常用呢?

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