Как мне разорвать цикл в определенной точке при отладке? - PullRequest
5 голосов
/ 19 июня 2009

Конверт: Visual Studio 2008 - C #

У меня есть for, который работает более 1000 раз над массивом строк.

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

Теперь я знаю, что могу добавить фрагмент кода, который ищет это, и точку останова при достижении, но нет ли способа сделать это в отладчике?

Ответы [ 3 ]

13 голосов
/ 19 июня 2009

Перейти к вашему коду

  1. создать точку останова
  2. щелкните правой кнопкой мыши красную точку слева
  3. выберите условие
  4. поставить что-то вроде i == 1000

или

в середине вашего цикла

написать

if (i == 1000){
  int a = 1;
}

и перебить int a = 1;

Второй метод больше похож на мусор, но я считаю, что это проще и быстрее сделать

6 голосов
/ 19 июня 2009

Да, вы можете в отладчике. Это называется «условной точкой останова». Как правило, щелкните правой кнопкой мыши на красной точке останова и перейдите к параметру «condition».

Быстрый Google превратил это и это вверх:

P.S. Последний - VS 2005, но тот же самый в 2008 году.

1 голос
/ 19 июня 2009

В Visual Studio вы можете установить условную точку останова - установите точку останова в точке, где вы хотите разорвать как обычно, а затем щелкните правой кнопкой мыши на коричневом круге на левом поле и выберите «Условная точка останова ...» или что-то еще. Затем вы вводите выражение, которое оценивается как true, когда вы хотите разорвать (например, i == 1000 или MyString = "hello world")

...