objective-c - 如何为项目中的单个文件禁用 ARC?

标签 objective-c xcode automatic-ref-counting manual-retain-release

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

这可能吗?如何按文件禁用 ARC?

最佳答案

可以通过为这些文件添加 -fno-objc-arc 编译器标志来禁用单个文件的 ARC。

您在 Targets -> Build Phases -> Compile Sources 中添加编译器标志。您必须双击Compiler Flags 下行的右列。您也可以通过按住 cmd 按钮选择文件,然后按 Enter 调出标志编辑框,将其添加到多个文件中。 (请注意,编辑多个文件将覆盖它可能已经拥有的任何标志。)

我创建了一个示例项目,其中包含一个示例:https://github.com/jaminguy/NoArc

xcode

有关更多信息,请参阅此答案: Disable Automatic Reference Counting for Some Files

关于objective-c - 如何为项目中的单个文件禁用 ARC?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6646052/

相关文章:

iOS:如何获取带有\"\字符的 JSON 数据?

ios - 具有非字母字符的Objective-C NSURL

iphone - 导航 Controller : pushViewController

ios - LLDB如何加载crashlog

objective-c - ARC 在哪里写发布指令?

ios - ARC 是否消除了对临时变量的需要?

iphone - 如何修复启用 ARC 的 iPhone 项目中的内存泄漏?

ios - 音频文件在后台播放时如何缩略图显示(IOS)?

iOS 控制 UIScrollView 的滚动位置?

ios - 深入了解保留周期