Как добавить точку останова в objc_exception_throw?
это был ответ от brad larson на этот
qaru.site/info/7777/... вопрос
Если вы добавите две точки останова, вы сможете отлаживать эти исключения. Для этого перейдите в Run | Показать | Точки останова и создание двух глобальных точек останова (я делаю их глобально, потому что они настолько полезны во всех моих приложениях). Первый должен быть назван "objc_exception_throw", и его местоположение должно быть "libobjc.A.dylib". Второй должен быть "- [NSException raise]", и его местоположение должно быть "CoreFoundation".
Теперь, если вы запустите отладку своего приложения с включенными точками останова, он должен сломать бросок этих исключений. Затем вы должны увидеть цепочку событий, которая привела к исключению в отладчике.
теперь в этом ответе я хочу спросить, как добавить указанное местоположение???
Ответы
Ответ 1
Я думаю, что ответ Брэда довольно ясен; надеюсь, это может помочь, если вы не поняли это.
В Xcode в верхнем меню нажмите "Выполнить" > "Показать" > "Точки останова". Появится новое окно.
Выберите "глобальные точки останова" в меню слева. В столбце "Точка останова" справа должен быть поле с текстом "Двойной щелчок для символа". В этом поле выберите один клик и введите "objc_exception_throw".
Затем, одним щелчком мыши в пространстве рядом с "objc_exception_throw" в столбце "location". Появится окно для ввода адреса (в данном случае "libobjc.A.dylib" ). Я сделал скриншот, который, надеюсь, поможет:
Ответ 2
В Xcode 4 эта большая точка останова может быть добавлена с помощью кнопки "+" в разделе "Точки останова" (⌘ + 6)
Ответ 3
в Xcode 6 - из верхнего меню
Отладкa > Точки остановa > Создать точку останова исключений
Ответ 4
Я также хотел бы рекомендовать добавить точку останова +[NSException raise:format:arguments:]
, и ее местоположение должно быть CoreFoundation
.