Вы можете установить условную точку останова в Xcode так, чтобы она взломалась только в отладчике, если выполнено определенное условие.
Для этого установите обычную точку останова, а затем щелкните ее правой кнопкой мыши и выберите Изменить точку останова .
Найдите точку останова в окне «Точки останова» и дважды щелкните столбец «Условие». Затем вы можете ввести выражение, например:
(BOOL)[[yourObject name] isEqualToString:@"foo"]
Это будет прерываться, только если свойство name
для yourObject
равно foo
.
Обратите внимание, что вам нужно привести результат выражения к логическому значению, иначе gdb не знает, как обращаться с результатом выражения. Вы также не можете использовать синтаксис точечных обозначений, вы должны использовать синтаксис в квадратных скобках.