【问题标题】:understanding Xcode debugger var display了解 Xcode 调试器 var 显示
【发布时间】:2011-12-07 04:53:14
【问题描述】:

新手问题:谁能提示我如何理解/解释调试器 var 窗格中显示的内容?

例如:我将 NSDictionary 作为方法参数传递。我设置了一个断点,以便检查字典中的值。下图(如果它通过..)显示了调试器中此 var 的展开视图。它正确地报告它包含 3 个名称/值对,但是当我展开所有部分时,我根本找不到它们的存储位置。

我是否必须创建这些名称/值对的本地变量才能在我想要检查时查看它们?我知道我可以使用 NSLog 或 printf,但有时我只是想快速浏览一下。

【问题讨论】:

    标签: xcode


    【解决方案1】:

    右键单击变量,单击“编辑摘要格式”并键入以下内容:

    {(NSString*)[$VAR description]}:s
    

    这将 NSDictionary 的 GDB 格式化程序替换为调用更昂贵的描述方法。
    也就是说,您将看到由 -[NSDictionary description] 生成的字典内容,而不是“x 键/值对”。

    这与在控制台窗口中输入po dictionary 相同。或者右键单击变量并选择“打印描述”。两者都调用了对象的描述方法。


    如果你好奇,你可以在/Developer/Library/Xcode/CustomDataViews/Foundation.plist 的 NSDictionary 键下找到这个格式化程序。您键入的替换内容将保存在 /Users/USERNAME/Library/Developer/Xcode/UserData/Debugger/CustomDataFormatters 中,并且会在运行中持续存在,直到您删除该文件。

    NSDictionary 真的是一个类簇,很少有人知道里面的结构。在这一点上,您不会发现该调试器树有太多用处。

    【讨论】:

    【解决方案2】:

    这就是你要找的: 点击你的听写,然后点击小“i”图标:-)

    【讨论】:

      猜你喜欢
      • 2013-10-20
      • 2010-10-06
      • 2011-02-16
      • 2016-07-13
      • 1970-01-01
      • 1970-01-01
      • 2011-01-29
      • 2011-03-14
      • 2011-08-05
      相关资源
      最近更新 更多