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

时间:2011-09-19 20:10:02

标签: ios xcode xcode4 ios4

我想要使用 ARC 转换为iOS应用。我只会使用迁移工具,但在预览阶段它会一直出错。

我知道我可以在逐个文件的基础上使用-fobjc-arc编译器指令,但我想在整个项目中启用 ARC ,然后使用{关闭单个类{1}}。

4.2中的新项目默认情况下可以使用ARC,因此某处必须有一个开关。

任何人都可以帮我将项目转换为-fno-objc-arc

3 个答案:

答案 0 :(得分:65)

  

“ARC可在Xcode 4.2中使用,目前处于测试阶段,且仅限于   使用Clang编译(a.k.a。“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

答案 1 :(得分:48)

选择您的项目或目标,然后转到构建设置,在 Apple LLVM编译器3.0 - 语言部分下,您将看到 Objective-C Automatic选项参考计数

答案 2 :(得分:5)

为了避免这种情况,在Xcode 4.6中,您将需要查找“CLANG_ENABLE_OBJC_ARC”,然后将其更改为“是”以启用。