我在接口中声明了一个全局数组/字典,如下所示。
@interface ViewController ()
{
NSDictionary *dictionary;
NSArray *array;
}
我正在进行API调用并在这些数组中存储值。字典。我想在运行时打印LLDB中的数组/字典的内容。
当我尝试打印这些全局变量时,它会给我以下错误。
(lldb) po assigneeArr
error: warning: Stopped in a context claiming to capture an Objective-C object pointer, but 'self' isn't available; pretending we are in a generic context
error: use of undeclared identifier 'assigneeArr'
error: 1 errors parsing expression
那么如何调试这个全局声明的变量??
答案 0 :(得分:2)
那些不是全局变量;它们是实例变量,因此您需要ViewController
的实例才能看到它们的值。
获得实例后,就像使用->
运算符一样简单(vc
就是实例):
po vc->dictionary
注意:我建议使用下划线来为实例变量的名称添加前缀,以避免与参数和局部变量混淆。
答案 1 :(得分:2)
最后通过更改 Apple LLVM 7.1语言模块中的启用Clang模块调试解决了我的问题,如以下屏幕截图
答案 2 :(得分:1)