Как найти экземпляр hex в консоли XCode?
Когда я запускаю консоль после сбоя моего iPhone-приложения, он часто говорит "непризнанный селектор, отправленный экземпляру 0x" бла-бла-бла ". Как узнать, что это за переменная? Есть ли способ в отладчике? Возможно ли это? Спасибо.
Ответы
Ответ 1
В gdb вы можете ввести
po 0x12345678
чтобы напечатать -description
объекта по этому адресу. Но эта информация редко бывает полезной. Вместо этого вы должны сначала проверить обратную трассировку исключения, которая может найти строку кода, которая вызывает проблему.
Ответ 2
Очень полезно создать контрольную точку исключения и с Xcode 7.3, это никогда не было проще. Это поможет вам найти строку кода, вызывающую исключение.
![введите описание изображения здесь]()
- добавить точку останова в строке, где приложение аварийно завершает работу
- щелкните точку останова в меню Навигатора проектов
- найдите только что созданную точку останова и выберите ее
- нажмите "+" в левом нижнем углу.
- Выберите "Добавить точку останова исключений"
Запустите свой код... всякий раз, когда вы получаете "нераспознанный селектор, отправленный в экземпляр 0x blah blah blah", отладчик остановится на строке, которая вызывает проблему.