【发布时间】:2010-11-20 02:51:59
【问题描述】:
我正在开发一个 iPhone 应用程序,该应用程序使用我拥有源代码的外部库。在调试期间,一些对象在调试器中列为 0x0,但应用程序运行良好。此外,一些对象地址指向错误的东西。 这些符号在外部库中。如果我在外部库中跟踪文件,地址就可以了。
有没有人建议如何阻止这种行为?
【问题讨论】:
-
我相信内存地址为 0x0 的对象是 nil - 这不是错误。
-
我知道它是零。该程序应该立即崩溃,因为我正在阅读这些对象。这就是令我惊奇的地方。这不是因为我不知道 0x0 是什么。我知道它是什么,这就是它令人惊叹的原因。
-
在 ObjC 中取消引用 nil 是合法的。它不应该崩溃。它会默默地什么都不做。
-
Rob,正如我所说,问题不在于程序。它与 XCode 调试器一起使用。程序运行得和我预期的一样好。我的对象正在被正确访问,但调试器坚持认为什么都没有。
-
我认为这需要访问 bugreporter.apple.com。在使用 Xcode 4.2.1 在 MacOS 10.7 sdk 下构建时,我看到了类似的行为,我希望我可以对试图用错误的程序员错误场景解释 IDE 错误的 cmets 打分。
标签: iphone cocoa-touch xcode ios-simulator