LLDB误差:使用未声明的标识符的(lldb error: use of undeclared id

2019-09-19 11:33发布

任何人都知道什么是怎么回事:

@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

Answer 1:

我只看过在声明的数据字段@interface块; 你似乎是在定义的字段@implementation

尝试把这个在标题相反,如

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


文章来源: lldb error: use of undeclared identifier