0

*为什么Objective-C中的所有对象都分配在堆而不是堆栈中?

如果我们同时使用 Objective-C 和 C++ 编程呢?

4

2 回答 2

3

不清楚你在问什么。

如果您要询问类似NSString* str = @"hello";的问题,那么您链接到的问题中已经回答了。

为什么没有堆?没有意义。iOS 应用程序中有很多堆,并且从中分配对象。

提到“自动对象”和/或auto_ptr您提到的“帖子”与Objective-C完全无关。

请澄清你的问题。

于 2010-12-25T05:33:58.837 回答
1
  1. 所有对象 C 对象都应该在堆栈中分配?( 我想是的 )

    不。 正如您问题中的引述所说,“Objective-C 运行时不允许在堆栈上实例化对象”

  2. 在 C++ 中,有内存堆栈,所以对于 iOS 应用程序,也有堆栈?( 我想是的 )

    是的,Objective-C 中有一个堆栈。对象根本没有在那里分配。

于 2010-12-25T09:42:50.880 回答