Как добавить условное прерывание на основе другой точки останова? Visual C ++ - PullRequest
4 голосов
/ 11 мая 2009

У меня есть набор универсального кода, который часто используется, и я хотел бы подсказать, чтобы устранить ошибку в определенном конкретном случае.

Так что я хотел бы разбить набор точек останова, только если была достигнута другая точка останова. Есть ли способ сделать это в Visual 2005? Я использую код C ++.

Спасибо!

Ответы [ 3 ]

4 голосов
/ 11 мая 2009

Если логика триггера достаточно сложна, иногда мне проще добавить DebugBreak (); позвонить в источник.

4 голосов
/ 11 мая 2009

Пожалуйста, помните, что вы можете отключить точку останова - может быть проще / эффективнее / чище (например, добавить отладочные флаги в ваш код и перекомпилировать, например) просто отключить вторую точку останова, подождать, пока первая остановится, а затем включить второй в вашем окне контрольных точек - он занимает всего два щелчка мышью каждый раз, когда вы отлаживаете ...:)

3 голосов
/ 11 мая 2009

Пусть ваша первая точка останова изменит значение некоторой переменной на магическое значение (вы можете использовать условную точку останова с выражением, которое изменило переменную и затем вернуло значение true). Затем сделайте второй разрыв точки останова, когда переменная будет иметь это магическое значение. например.,

int debug_flag = 0;

Первое условие останова:

debug_flag = 0xdeadbeef, true

Второе условие точки останова:

debug_flag == 0xdeadbeef
...