【发布时间】:2014-11-19 02:59:11
【问题描述】:
在 Xcode 4.6.3 中运行这两行代码后,x 和 y 在调试器的变量视图窗格中都被标记为(null) 并带有灰色文本。
NSNumber* y = [NSNumber numberWithBool:YES];
NSNumber* z = [NSNumber numberWithBool:NO];
同上:
NSNumber* literalYes = @YES;
NSNumber* literalNo = @NO;
然而,如果我在变量视图窗格中右键单击这些项目,并从上下文菜单中选择Print Description,我确实看到了正确的1 或0 值。
为什么调试器的变量视图窗格将这些对象报告为null,而实际上它们不是?
【问题讨论】:
-
不要相信变量视图。最好从调试控制台打印变量的值/描述,或者在变量视图中右键单击它并从那里打印。
-
在这段代码之后设置断点并在调试器控制台视图中输入“po y”+enter(这是打印对象命令)并确保我相信它实际上不能为空
-
这可能对你有帮助:stackoverflow.com/questions/753153/…
-
如果您在发布模式下运行,您将无法在左侧窗格中看到变量值。
标签: objective-c xcode boolean nsnumber