任何人都可以告诉我,Objective C在堆中存储对象或堆栈的位置。我在不同的网站上看过这个,但在目标C的情况下我很困惑。
提前致谢。
答案 0 :(得分:5)
Objective-C只使用堆对象,没有堆栈对象。
因为据我所知
<强>堆栈强>
堆栈是一个内存区域,包含本地变量的存储。每个执行线程有一个堆栈。调用函数时,函数本地数据存储在堆栈帧中。函数返回时,其堆栈帧被销毁。所有这些都是自动发生的。
<强>堆强>
堆是内存中的其他所有内容。内存可以随时在堆上分配,并随时销毁。
最后A stack object is just an object where the memory for that object is allocated on the heap
。