Почему отладчик lldb говорит, что в симуляторе iOS 5.1 объект равен nil? - PullRequest
3 голосов
/ 09 марта 2012

Мой код напишите как:

_myDataArray = [[NSMutableArray alloc] initWithCapacity : kNum];

for (int i=0; i<kNum; i++) {
    MyData *myData = [[[MyData alloc] init] autorelease];
    pageData.title = [NSString stringWithFormat:@"No.%d line", i];
    [_myDataArray addObject:myData];
}

В симуляторе iOS 4.3 проблем нет, но отладчик lldb сообщает, что _myDataArray равен nil

(lldb) po _myDataArray
(NSMutableArray *) $2 = 0x00000000 <nil>

в симуляторе iOS 5.0 / 5.1, Xcode 4.3.1, но результат в представлении правильный.

Xcode 4.3.2 выглядит исправить эту проблему.

Ответы [ 3 ]

0 голосов
/ 12 апреля 2012

Я могу подтвердить точно такую ​​же проблему с iOS 4.3, 5.0 и 5.1 как на iDevice, так и в симуляторе.Обновление с Xcode 4.3.1 до 4.3.2 не решает проблему здесь ...

Переключение назад к отладчику GDB в настройках схемы решает проблему.

0 голосов
/ 13 июля 2012

У меня такая же проблема со всеми моими проектами в симуляторах 5.0 и 5.1. XCode 4.3.3 исправил это для меня.

0 голосов
/ 21 марта 2012

Я могу подтвердить, что у нас та же проблема с симулятором 5.0 и 5.1 с использованием Xcode 4.3.1.Тот же код с симулятором Xcode 4.2.1 и 5.0 не имеет проблемы.Заметил, что изменяемые массивы распределяются в том порядке, в котором они находятся в файле .h - пошаговое выполнение кода .m в режиме отладки забавно, потому что массивы распределяются не по порядку.Решение?Подождите, пока Apple исправит проблему, сообщит об ошибке и т. Д.

...