Итак, я работаю над проектом, в котором у меня очень много циклов for, и я обычно сталкиваюсь с проблемами, когда приближаюсь к концу цикла, но практически невозможно добраться туда вручную, войдя в цикл миллионы раз. Я знаю, что могу просто изменить переменную счетчика, но в этом случае это не сработает, потому что побочных эффектов каждой итерации не будет. Есть ли способ сделать точку останова на месте после 999999998 итераций? Я использую Visual Studio Ultimate 2010.
Отладка цикла For; Перемотка вперед
Ответы (3)
поставить точку останова, щелкнуть по ней правой кнопкой мыши, выбрать набор условий
i == 999999998 //if your loop looks like for (var i == 0;....
person
Raphaël Althaus
schedule
12.04.2012
Я сделал это, и, вероятно, это то, что я ищу, но теперь, когда есть точка останова, отладка приостанавливается каждые тысячу или около того итераций, и для продолжения мне нужно щелкнуть параметр «Разбить все» в окне IntelliTrace. Любая идея, почему это останавливается и как отменить это поведение?
- person leonsas; 12.04.2012
Я просто вставляю изображение, чтобы визуализировать ответ Рафаэля Альтхауса
person
user1767754
schedule
03.02.2015
Как говорит Рафаэль, вы можете установить условие для точки останова. Однако, если это происходит в узком цикле, накладные расходы на условие могут быть весьма значительными. Я обнаружил, что выполняю проверку в коде и вызываю В этом случае Debugger.Break работает намного лучше.
person
Brian Rasmussen
schedule
12.04.2012