我在我的项目中成功地使用了ARC。然而,我遇到过一些文件(例如,在单元测试和模拟对象中),其中ARC的规则现在有点脆弱。我记得听说过有一种方法可以在每个文件的基础上禁用ARC,尽管我一直没有找到这个选项。

这可能吗?如何在每个文件的基础上禁用ARC ?


当前回答

这是非常简单的方法,使个别文件非弧。

遵循以下步骤:

在单个文件上禁用ARC:

在Xcode中的目标/构建阶段/编译源中选择所需的文件 选择。m文件,你想让它成为NON-ARC 按回车键 类型-fno-objc-arc

非ARC文件到ARC项目标志:-fno-objc-arc

ARC文件到非ARC项目标志:-fobjc-arc

其他回答

请按照截图输入-fno-objc-arc。

在Build Phases>Compile Sources中使用-fno-objc-arc标志即可

去应用程序->然后目标->构建阶段->编译源

现在,选择要禁用ARC的文件

粘贴这个片段"-fno-objc-arc"粘贴后按ENTER

在您想禁用ARC的每个文件中。

对于Xcode 4.3,更简单的方法可能是:编辑/重构/转换为objective-C ARC,然后检查你不想转换的文件。我发现这种方法与使用上面的编译器标志是一样的。

选择项目->目标->构建阶段->编译器源 选择file ->编译器标志 添加-fno-objc-arc