【问题标题】:Using Breakpoint to log Value Of Particular Key In Dictionary使用断点记录字典中特定键的值
【发布时间】:2015-11-10 06:09:18
【问题描述】:

如何记录字典中特定键的值使用断点

我知道的是,

我们可以使用NSLog 和 我们还可以使用@exp@ 格式记录消息(见附图),

就我而言,这个(Value Of Title Key Is : @someRandomDictionary@,弹出窗口中的命令)记录字典的所有键,但我只想查看特定键的值。

有没有可能这样做!

【问题讨论】:

    标签: ios objective-c debugging dictionary breakpoints


    【解决方案1】:

    您可以像这样使用po(打印对象命令):

    po 命令采用任意表达式,该表达式返回一个对象并在控制台中打印它的描述。在这种情况下,它将打印指定键的值,如果它不存在,则打印nil

    【讨论】:

    • 对于 OP,请注意 Teo 使用的是“调试器命令”操作,而不是日志消息命令。它提供了更多选择。有“po”,用于向后兼容 GCD 调试器,然后有“表达式”(简称“e”),可用于更广泛的表达式。
    • 感谢您的回答,但使用Debugger Command (po),我们无法添加静态字符串(在我的情况下为Value Of Title Key Is :),这有助于我们轻松识别日志。
    • 为什么不呢?试试:po [NSString stringWithFormat:@"Title key is: %@", dict[@"key"]]po 命令可以在任何对象或表达式上调用。
    • 我试过这个并且(在 Xcode 7.2.1 中)它不起作用:lldb 中的 Objective-C 解析器显然不够聪明,无法识别 -stringWithFormat: 接受参数列表,并且我收到错误消息error: too many arguments to method call, expected 1, have 2。明显的解决方法是在断点窗口中有多个操作:一个日志消息和一个调试器命令。尴尬,但它会将信息输入控制台。
    猜你喜欢
    • 2020-03-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-21
    • 1970-01-01
    • 2022-08-10
    • 1970-01-01
    • 2016-11-06
    相关资源
    最近更新 更多