В отладчике Xcode lldb, что означает <parent NULL>?
Я всегда получаю EXC_BAD_ACCESS, поэтому я смотрю, какая переменная указывает на NULL
, и все, что я вижу, это то, что одна из моих переменных (иногда несколько) имеет
< parent имеет значение NULL >
рядом с ним. Проблема в том, что я не знаю, что это значит, и я не могу найти что-либо из поиска Google или что-то в этом роде. Я думаю, что это означает, что это переменная NULL
, которую я пытаюсь получить, но тогда сообщение не имеет большого смысла. Кто-нибудь знает об этом немного больше?
Ответы
Ответ 1
Это просто означает, что переменная является указателем на объект, а указатель NULL
.
Из источника LLDB:
if (addr == LLDB_INVALID_ADDRESS)
{
m_error.SetErrorString ("parent address is invalid.");
}
else if (addr == 0)
{
m_error.SetErrorString ("parent is NULL");
}
else
...
Ответ 2
У меня тоже было "parent is NULL", когда я печатал описание моего объекта массива
Благодаря ответу trojanfoe, я смог увидеть, что возвращаю свой массив неправильно. Я просто изменил:
- (NSMutableArray *)allItems {
return self.allItems;
}
в
- (NSMutableArray *)allItems {
return _allItems;
}
Надеюсь, это поможет!