Objective c 为什么调试器将[NSNumber numberWithBool:YES]报告为null?

Objective c 为什么调试器将[NSNumber numberWithBool:YES]报告为null?,objective-c,xcode,boolean,nsnumber,Objective C,Xcode,Boolean,Nsnumber,在Xcode 4.6.3中运行这两行之后,x和y在调试器的变量视图窗格中都用灰色文本标记为(null) 同上: NSNumber* literalYes = @YES; NSNumber* literalNo = @NO; 但是,如果我在变量视图窗格中单击这些项目,并从关联菜单中选择“打印说明”,我会看到正确的1或0值 为什么调试器的“变量视图”窗格将这些对象报告为null,而它们不是空对象?Xcode 4调试器位于。(见上面的评论) 忽略灰色文本“(空)” 查看此问题,了解有关显示实

在Xcode 4.6.3中运行这两行之后,
x
y
在调试器的变量视图窗格中都用灰色文本标记为
(null)

同上:

  NSNumber* literalYes = @YES;
  NSNumber* literalNo = @NO;
但是,如果我在变量视图窗格中单击这些项目,并从关联菜单中选择“打印说明”,我会看到正确的
1
0


为什么调试器的“变量视图”窗格将这些对象报告为
null
,而它们不是空对象?

Xcode 4调试器位于。(见上面的评论)

忽略灰色文本“(空)”

查看此问题,了解有关显示实际值的提示

单程… 在代码之后设置断点,单击调试器控制台视图,并通过键入
poy
使用打印对象命令。按Return/Enter执行表达式,并在控制台中查看结果值。命令
p
po
在较旧的
gdb
和较新的
lldb
调试器技术中工作。有关示例,请参见

另一种方式… 打开调试器视图,并在摘要列中输入以下内容:
{(int)[$VAR intValue]}
Xcode 4调试器位于。(见上面的评论)

忽略灰色文本“(空)”

查看此问题,了解有关显示实际值的提示

单程… 在代码之后设置断点,单击调试器控制台视图,并通过键入
poy
使用打印对象命令。按Return/Enter执行表达式,并在控制台中查看结果值。命令
p
po
在较旧的
gdb
和较新的
lldb
调试器技术中工作。有关示例,请参见

另一种方式… 打开调试器视图,并在摘要列中输入以下内容:
{(int)[$VAR intValue]}

不要信任变量视图。最好从调试控制台打印变量的值/说明,或在变量视图中右键单击变量,然后从那里打印。在此代码后设置断点,并在调试器控制台视图中输入“poy”+(这是print object命令),确保,我相信它实际上不能为空。这可能会帮助您:如果您在发布模式下运行,您将无法在左窗格中看到变量值。不要信任变量视图。最好从调试控制台打印变量的值/说明,或在变量视图中右键单击变量,然后从那里打印。在此代码后设置断点,并在调试器控制台视图中输入“poy”+(这是print object命令),确保,我相信它实际上不能为空。这可能会帮助您:如果您在发布模式下运行,您将无法在左窗格中看到变量值。
  NSNumber* literalYes = @YES;
  NSNumber* literalNo = @NO;