iPhone应用程序中的内存管理还是新手,我有一个新问题。 假设我有一些方法使用AppDelegate的属性。在这些方法的开头,我得到了代表:
// Get delegate
MyAppDelegate *delegate = (MyAppDelegate *)[[UIApplication sharedApplication] delegate];
我是否需要在方法结束时执行某种发布(我考虑在每个方法的末尾添加[委托发布])。
一般来说,我们是否必须在方法结束时释放在此方法中创建的每个对象变量(NSString,NSData,...)?
非常感谢, LUC
答案 0 :(得分:1)
简单规则:
如果你有一个对象的引用(在本例中是appDelegate)你没有在对象上调用alloc
,那么你就不需要释放了。如果您在所提供的代码行中拨打了alloc
,那么您需要拨打[delegate release];
答案 1 :(得分:1)
没有。这只是对您的代表的引用,最有可能被您程序的其他部分使用。