代码之家  ›  专栏  ›  技术社区  ›  Ken Pespisa

取消分配UIApplicationLegate拥有的对象有什么好处吗?

  •  3
  • Ken Pespisa  · 技术社区  · 15 年前

    撇开最佳实践不谈,如果我创建了一个属于我的UIApplicationLegate类的对象,并且在应用程序运行的整个过程中都保持不变,那么在UIApplicationLegate的dealloc方法中添加[object release]语句有什么真正的优势吗?

    当然,从最佳实践的角度来看,在整个应用程序中一致地添加内存管理代码是有意义的,但从执行的角度来看,我很好奇这是否真的重要?

    1 回复  |  直到 15 年前
        1
  •  4
  •   Rob Napier    15 年前

    这个 -dealloc 因为app委托几乎肯定永远不会被调用(如果是的话,你几乎肯定会有bug),所以从这个意义上说,这并不重要。也就是说,在Cocoa开发中,最佳实践永远不会被搁置一旁,而内存管理中的谨慎一致性是避免某些最难发现的bug的唯一最有效的方法。因此,一点额外的代码是值得的麻烦。但在这种情况下(还有许多其他类似的情况),这在实践中并不重要。

    推荐文章