在我的应用程序中,我创建了一个 appdelegate 共享实例,并且我正在为一些数组分配内存,例如
appDelegate = (AppDelegate_Shared *)[[UIApplication sharedApplication] delegate];
appDelegate.allServiceAppList_array = [[NSMutableArray alloc]init];
appDelegate.blockXMLData_array = [[NSMutableArray alloc]init];
appDelegate.notesXMLData_array = [[NSMutableArray alloc]init];
现在我不知道如何释放我分配的所有数组。它显示了我分配和初始化内存的潜在泄漏。
释放这些对象的正确方法是什么。
提前致谢
最佳答案
如果 AppDelegate 属性被定义为(保留),就这样做
appDelegate.something = [[[Something alloc]init]autorelease];
这是 ObjC 中最常见的模式。
保留属性将保留新对象,autorelease 本质上是在将来释放对象,因此最终结果是保留计数为 1 的对象将在 dealloc 方法中释放。
关于iphone - 如何释放为 appDelegate 共享实例分配的内存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10911186/