Gee*_*irl 109 iphone memory-management ios ios5 automatic-ref-counting
作为一名初级iPhone程序员,编写iOS 5或更早版本的应用程序的最佳做法是什么?具体来说,我应该继续使用数据的发布/保留,还是应该忽略它?有关系吗?
sud*_*-rf 99
由你决定.您可以使用ARC(自动引用计数)编写应用程序,Xcode将编写"粘合代码"以允许启用ARC的应用程序在iOS 4上运行,无需修改.但是,某些事情不会起作用,并且最明显的许多库你可能希望(有时)抛出无数错误,在开发人员发布与ARC兼容的更新之前,你将无法使用它们.
编辑:我最近发现您可以基于每个文件关闭ARC.请参阅pixelfreak的回答.所以,我的建议仍然存在,但现在不需要更新第三方库来使用ARC.
以下是Apple关于选择退出ARC以获取特定文件的内容:
迁移项目以使用ARC时,-fobjc-arc编译器标志将设置为所有Objective-C源文件的缺省值.您可以使用该类的-fno-objc-arc编译器标志为特定类禁用ARC.在Xcode中,在目标Build Phases选项卡中,打开Compile Sources组以显示源文件列表.双击要为其设置标志的文件,在弹出式面板中输入-fno-objc-arc,然后单击"完成".
请在此处查看完整的过渡指南.
nev*_*ing 10
iOS 5仍然在NDA之下,可能会在他们发布公开版本之前.如果您有开发人员帐户,请前往Apple Developer论坛并在那里询问.
对于以前的版本,您必须计算引用并相应地保留和释放.查看内存管理指南.
编辑:这是自动引用计数的公共规范和来自公共iOS 5页面的引用:
Objective-C的自动引用计数(ARC)使内存管理成为编译器的工作.通过使用新的Apple LLVM编译器启用ARC,您将永远不需要再次键入retain或release,从而大大简化了开发过程,同时减少了崩溃和内存泄漏.编译器完全了解您的对象,并在不再使用它的瞬间释放每个对象,因此应用程序运行速度与以往一样快,具有可预测的平滑性能.
| 归档时间: |
|
| 查看次数: |
57487 次 |
| 最近记录: |