撇开最佳实践不谈,如果我创建了一个属于我的UIApplicationLegate类的对象,并且在应用程序运行的整个过程中都保持不变,那么在UIApplicationLegate的dealloc方法中添加[object release]语句有什么真正的优势吗?
当然,从最佳实践的角度来看,在整个应用程序中一致地添加内存管理代码是有意义的,但从执行的角度来看,我很好奇这是否真的重要?
这个 -dealloc 因为app委托几乎肯定永远不会被调用(如果是的话,你几乎肯定会有bug),所以从这个意义上说,这并不重要。也就是说,在Cocoa开发中,最佳实践永远不会被搁置一旁,而内存管理中的谨慎一致性是避免某些最难发现的bug的唯一最有效的方法。因此,一点额外的代码是值得的麻烦。但在这种情况下(还有许多其他类似的情况),这在实践中并不重要。
-dealloc