objective-c - Obj-C,消息表达式中的接收者是未初始化的值,分析器警告?

标签 objective-c xcode cocoa-touch analyzer

我在这条线上收到以下分析器警告...

if ([datStartDate compare:now] == NSOrderedDescending) {

Receiver in message expression is an uninitialized value

该行代码出现在 IBAction 的中间。

我做错了什么?

最佳答案

如果展开错误旁边的显示三角形(在左侧的错误导航器中),它将向您显示导致值未初始化的情况的确切代码路径。

您可能会想“但是,分析器,真的,这永远不会发生。”。虽然这可能是正确的,但您在代码中创建的假设由于错误或故意更改而在将来可能不成立。这会增加代码库的脆弱性,并导致维护麻烦。

修复代码,使其明确并删除假设。

关于objective-c - Obj-C,消息表达式中的接收者是未初始化的值,分析器警告?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8071053/

相关文章:

objective-c - 使用 cocoa 获取 Mac OS X 当前连接的 wifi 网络的安全类型

ios - 无法使用 SWIFT 2 从附件标签 rss xml 中提取 url 值

xcode - Xcode 7.1 中架构 armv7 的 undefined symbol

ios - .xib 文件如何自动关联并加载到我的 ViewController?

objective-c - 是否有用于与 SOAP Web 服务通信的 native iOS 解决方案?

objective-c - 解析日期字符串给出 [__NSDate length] 无法识别的选择器异常

iphone - 如何在 Objective-C 中使用 C 语言数组

ios - 在不使用 segue 的情况下单击确定警报按钮后导航到另一个 View

objective-c - CABasicAnimation 不起作用

ios - 报亭安装留下阴影 "installing"图标