0

我是 iPhone 应用程序开发的初学者。很抱歉提出愚蠢的问题。

考虑一个案例,如果我的应用程序在没有任何警告的情况下崩溃,那么我的应用程序分配的所有内存都将被 iOS 自动释放,还是保持原样?

如果不是由 iOS 发布,那么我可以如何以及在哪里发布它们?

4

4 回答 4

1

如果您的应用程序崩溃,您将无能为力。当应用程序崩溃时,系统将销毁特定应用程序分配的内存。当应用程序再次启动时,没有分配内存,您的应用程序将重新启动。

您应该正确管理应用程序中的内存,请参阅:thisApple Doc

或者您可以尝试ARC,请参阅本教程

于 2012-12-18T06:37:47.670 回答
1

是的,任何体面的操作系统都会释放所有内存并释放许多其他资源,例如程序终止时程序使用的文件句柄。程序如何终止并不重要。需要注意的一件重要事情是操作系统在不释放/销毁对象的情况下回收内存。因此,当操作系统在程序终止时回收内存时,不会调用通常在对象被干净释放时自动运行的任何代码。

于 2012-12-18T06:38:59.753 回答
0

您将不得不在 dealloc 方法中释放您的全局(在 .h 文件中标记)对象,即

-(void)dealloc
{
   //release here
}

您可以在使用后释放您的私有或实例对象。

快乐编码!!!!

于 2012-12-18T06:30:29.973 回答
0

我更喜欢开始在 ARC(自动引用计数)中工作,它也适用于 iOS4 和 iOS5

于 2012-12-18T06:41:06.833 回答