在我的cocoa应用程序中,我正在将文件上传到我的服务器。我有status bar来显示文件上传的当前状态。当我点击状态栏时,它将显示当前上传文件的状态。为了显示当前状态,我将检索到的值作为对象添加到数组中。 在这里,我给出了将对象添加到数组的代码。
if(temp1 != Nil)
{
[printComplete addObject:temp1];
}
我的代码在多个点使用了相同类型的代码。但有时我甚至在检查了nil之后得到了以下错误:
-[__NSArrayM insertObject:atIndex:]: object cannot be nil
当我从Xcode /调试阶段运行此代码时,我无法得到此错误。当我将其作为应用程序运行时很少发生。任何人都可以提供解决此问题的解决方案。
答案 0 :(得分:0)
好的,所以我最初的建议是尝试以下方法,因为OP正在测试与Nil
而不是nil
的平等:
if (temp1) {
[printComplete addObject:temp1];
}
查看NSHiptser对nil
/Nil
的看法。
然而,事实证明它们实际上被定义为相同的东西,因此这不会成为问题的根源。
我仍然建议(风格上)将每种用途用于其预期用途。
这是关于这个主题的另一个有趣答案:https://stackoverflow.com/a/1843034/1716763
我会在这里留下这个答案,除非人们认为没有必要。