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

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


当前回答

添加标志" -fno-objc-arc "。

简单的以下步骤: 应用>目标>构建阶段>编译源>添加标记后类" -fno-objc-arc "

其他回答

只要在Build Phases>Compile Sources中使用-fno-objc-arc标志,在你不想使用ARC的文件前面。

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

本视频中解释的四个必修步骤

    //1. Select desired files
    //2. Target/Build Phases/Compile Sources
    //3. Type -fno-objc-arc
    //4. Done

对于Xcode中的特定文件,可以禁用ARC(自动引用计数)。

选择目标->构建阶段->编译源->选择文件(双击)->在弹出窗口中添加"-fno-objc-arc"

我在使用“Reachibility”文件时遇到过这种情况。

如下图:

我认为所有其他的答案都在解释如何禁用MRC(手动引用计数)和启用ARC(自动引用计数)。 对多个文件使用MRC(手动引用计数),即禁用ARC(自动引用计数):

在Xcode中的目标/构建阶段/编译源中选择所需的文件 按回车键 类型-fobjc-arc 按Enter或Done