it-swarm.cn

如何在Xcode 4.2中启用项目范围的ARC

我有一个iOS应用程序,我想转换为使用 _ arc _ 。我只是使用迁移工具,但在预览阶段它一直出错。

我知道我可以在逐个文件的基础上使用-fobjc-arc编译器指令,但是我想在整个项目中启用 _ arc _ ,然后使用-fno-objc-arc关闭各个类。

4.2中的新项目默认使用ARC,因此必须在某处使用交换机。

任何人都可以帮助我将项目转换为ARC

50
Alpinista

“ARC在Xcode 4.2中可用,目前处于测试阶段,只有在使用Clang(又名”Apple LLVM编译器“)进行编译时。该设置被称为”Objective-C自动参考计数“。打开和关闭你走。

如果您正在处理现有代码,更改此设置将产生大量错误。 ARC不仅为您管理内存,还禁止您自己尝试。使用ARC时手动发送保留/释放/自动释放是非法的。由于普通的非ARC Cocoa代码充斥着这些东西,你会遇到很多错误。

幸运的是,Xcode提供了一种转换现有代码的工具。 选择编辑 - >重构... - >转换为Objective-C ARC ... Xcode将指导您转换代码。虽然可能在某些情况下需要帮助确定要做什么,但这个过程应该基本上是自动的。“

我从这个链接中获取了这个,帮助了我很多: http://www.mikeash.com/pyblog/friday-qa-2011-09-30-automatic-reference-counting.html

65
RyanG

选择你的项目或目标,然后转到 Build Settings 并在 Apple LLVM编译器3.0 - 语言 你会看到选项 Objective-C自动引用计数

48
user263865

在Xcode 4.6中,您将需要查找“CLANG_ENABLE_OBJC_ARC”,然后将其更改为“是”以启用。

5
Josh B