ios - 在现有 ARC 项目中实现 OCUnit 的问题

标签 ios objective-c xcode automatic-ref-counting ocunit

我正在考虑将单元测试添加到我现有的应用程序中,主要是为了自学它是如何工作的。我已经到了一切都与依赖关系连接起来的阶段,我可以运行一些小检查,例如:

STAssertEquals(1, 2, @"This is a fail!");

结果似乎是正确的。不幸的是,如果我导入我的任何脚本,我会在任何使用关键字(例如 unsafe_unretainedstrong)的 @property 行上遇到编译器错误:

Expected a property attribute before 'unsafe_unretained'

我想知道,这与 ARC 有什么关系吗? OCUnit 不符合 ARC 标准吗?我需要更改我的编译器设置吗?

最佳答案

短篇小说

OP 在目标设置中设置了错误的编译器

长一点的故事(针对“Expected a property attribute before ...”错误的 googlers)

目前唯一支持 ARC 的编译器是 Apple LLVM 编译器。我相信 Apple 将 LLVM GCC 视为已弃用,并且出于兼容性原因将其与 Xcode 捆绑在一起。所有新功能都将添加到 LLVM 编译器中。

编译器设置可以在 File -> Project Settings..., "Build settings tab"中设置。该选项的名称是“C/C++/Objective-C 编译器”。

关于ios - 在现有 ARC 项目中实现 OCUnit 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14464637/

相关文章:

ios - 在iOS中使用UIDatePicker倒数计时器

ios - 解析SDK崩溃报告不报告

ios - 由于未捕获的异常 'NSInternalInconsistencyException' 而终止应用程序,原因 : 'FCM error: cannot have last checkin timestamp in future'

objective-c - 如何编写通用的 UIRectCorner 函数?

objective-c - 如何将 textField 复制到 OSX 剪贴板?

iOS MapView 显示整个美国

ios - 在 Xcode 11.5 中,我尝试下载所需的配置文件。帐户屏幕上的代理和用户有什么区别?

ios - iOS 中的周期性本地通知

ios - 在 Xcode 4.6 中使用 Base SDK iOS 6.0.2

ios - 如何在重写方法中强制调用 super