Как установить условные точки останова в Visual Studio?
есть ли простой способ установить условные точки останова в Visual Studio?
Если я хочу попасть в точку останова только тогда, когда значение переменной становится чем-то, как я могу это сделать?
12 ответов:
при использовании Express edition вы можете попробовать это:
#if DEBUG if( fooVariable == true ) System.Diagnostics.Debugger.Break(); #endif
если оператор гарантирует, что в релизе build breakepoint не будет присутствовать.
Visual Studio предоставляет множество параметров для условных точек останова:
установить любой из них вы
- установить точку останова
- щелкните правой кнопкой мыши по точке останова,и во всплывающем меню выберите вариант, который подходит вам.
эти параметры следующие:
- вы можете установить условие, основанное на выражении кода, которое вы предоставляете (выберите условие из выпадающего меню). Для экземпляр вы можете указать, что foo = = 8 или какое-либо другое выражение.
- вы можете сделать точки останова пуска после того, как они попали в определенное количество раз. (выберите Счетчик из выпадающего меню). Это забавный вариант для игры, так как вы на самом деле не ограничены нарушением определенного количества попаданий, но у вас есть варианты для нескольких других сценариев. Я оставлю это вам, чтобы исследовать возможности.
- вы можете установить фильтры на идентификатор процесса, идентификатор потока, и имя машины (выберите фильтр из выпадающего меню)
просто другой способ сделать это, (или если вы используете express) добавить условие в коде:
if(yourCondition) { System.Diagnostics.Debugger.Break(); }
- установить точку останова на строку
- правый клик по красному шару
- выбрал условную точку останова
- условие установки
- установить точку останова, как обычно.
- щелкните правой кнопкой мыши на маркере точки останова
- Нажмите Кнопку "Состоянии..."
- написать условие, вы можете использовать имена переменных
- выберите "is True"или" has Changed"
создайте точку останова, как обычно, щелкните правой кнопкой мыши красную точку и выберите "условие".
написание фактического состояния может быть сложной частью, поэтому я склонен
- установите обычную точку останова
- запустить код пока точка останова не будет нажата в первый раз
- использовать Окно (Debug > Windows > Immediate) to
- установить точку останова, как обычно
- Правой Кнопкой Мыши на точке останова и выберите условие
- вы увидите диалоговое окно с надписью "условие точки останова"
- поставьте условие в поле например "i= = 5"
точка останова будет поражена только тогда, когда мне будет 5.
установить
breakpoint
как обычно, щелкните правой кнопкой мыши на точку останова и выберите и устанавливает ваше состояние.
создать условную точку останова функция
1)в окне точки останова, щелкните создать, чтобы создать новую точку останова.
2) на вкладке функция введите обратный для функции. Введите 1 для строки, введите 1 для символа, а затем установите для языка значение Basic.
3) щелкните условие и убедитесь, что установлен флажок условие. Тип instr.длина > 0 для параметра условие убедитесь, что выбран параметр истина, а затем нажмите кнопку ОК.
4) в В диалоговом окне новая точка останова нажмите кнопку ОК.
5) в меню отладка нажмите кнопку Пуск.