Я использую XCode 3.2.3 и iPhone SDK
Таким образом, я пытаюсь отладить подкласс UIView, я поразил точку останова в переопределенном методе, и я не вижу символов или в GUI или в gdb, просто globals и регистрах.
Это - то, что я вижу:
(gdb) po self
No symbol "self" in current context.
Все же, когда я установил точку останова в подклассе UIViewController, все символы там:
(gdb) po self
<MyViewController: 0x5c18ae0>
Current language: auto; currently objective-c
Некоторые вещи я попробовал:
rm -rf /Developer
в корневую подсказку удараПомогите, мои пальцы выходят за край из отладки с NSLog
Так что изменение с Debug на Release помогло, и у меня есть все мои отладочные символы.
Я думаю, что это просто ошибка в SDK 4.0.
Я часто сталкиваюсь с этой ошибкой. Мое обходное решение - набирать команду bt в консоли gdb, затем она автоматически сортирует себя и начинает распознавать символы в текущем контексте.
Хммм, безуспешно пытался воспроизвести это в 3.2.3 и SDK4 Final - удалось отладить подкласс UIView, как ожидалось. Это происходит при использовании одной из бета-версий?
Такое случается со мной в не-бета-версии. Я только что заметил, что это происходит только при вызове метода, определенного классом, то есть (+) не (-)
Я бы не возражал, если бы у меня не было указателя «self», но он также, кажется, стирает все отображения локальных переменных. в отладчике, и это неправильно.
У меня сработала методика МТС. Переход от отладки к выпуску устраняет эту проблему. Как странно. Я могу опровергнуть теорию эволюционированного программного обеспечения, поскольку обнаруживаю ошибку внутри метода экземпляра.