lldb错误:使用未声明的标识符

任何人都知道这里发生了什么:

@implementation Test { NSData *_data; } - (id)initWithData:(NSData *)data { self = [super init]; if (self) { _data = data; } return self; // BREAKPOINT HERE } 

来自lldb:

 (lldb) p data (NSData *) $1 = 0x07f911e0 30308 bytes (lldb) p _data error: use of undeclared identifier '_data' error: 1 errors parsing expression 

为什么我不能查看_data

我只见过在@interface块中声明的数据字段; 您似乎在@implementation定义字段。

尝试将其放入标题中,例如

 @interface Test { NSData *_data; } . . . @end