Как установить условные точки останова в Visual Studio?


есть ли простой способ установить условные точки останова в Visual Studio?

Если я хочу попасть в точку останова только тогда, когда значение переменной становится чем-то, как я могу это сделать?

12 111

12 ответов:

установить точку останова, как обычно. Щелкните его правой кнопкой мыши. Нажмите Кнопку Состояние.

при использовании Express edition вы можете попробовать это:

#if DEBUG
    if( fooVariable == true )
        System.Diagnostics.Debugger.Break();
#endif

если оператор гарантирует, что в релизе build breakepoint не будет присутствовать.

Visual Studio предоставляет множество параметров для условных точек останова:

установить любой из них вы

  1. установить точку останова
  2. щелкните правой кнопкой мыши по точке останова,и во всплывающем меню выберите вариант, который подходит вам.

эти параметры следующие:

  • вы можете установить условие, основанное на выражении кода, которое вы предоставляете (выберите условие из выпадающего меню). Для экземпляр вы можете указать, что foo = = 8 или какое-либо другое выражение.
  • вы можете сделать точки останова пуска после того, как они попали в определенное количество раз. (выберите Счетчик из выпадающего меню). Это забавный вариант для игры, так как вы на самом деле не ограничены нарушением определенного количества попаданий, но у вас есть варианты для нескольких других сценариев. Я оставлю это вам, чтобы исследовать возможности.
  • вы можете установить фильтры на идентификатор процесса, идентификатор потока, и имя машины (выберите фильтр из выпадающего меню)

просто другой способ сделать это, (или если вы используете express) добавить условие в коде:

if(yourCondition)
{
    System.Diagnostics.Debugger.Break();
}
  1. установить точку останова на строку
  2. правый клик по красному шару
  3. выбрал условную точку останова
  4. условие установки
  1. установить точку останова, как обычно.
  2. щелкните правой кнопкой мыши на маркере точки останова
  3. Нажмите Кнопку "Состоянии..."
  4. написать условие, вы можете использовать имена переменных
  5. выберите "is True"или" has Changed"

создайте точку останова, как обычно, щелкните правой кнопкой мыши красную точку и выберите "условие".

написание фактического состояния может быть сложной частью, поэтому я склонен

  1. установите обычную точку останова
  2. запустить код пока точка останова не будет нажата в первый раз
  3. использовать Окно (Debug > Windows > Immediate) to
  1. установить точку останова, как обычно
  2. Правой Кнопкой Мыши на точке останова и выберите условие
  3. вы увидите диалоговое окно с надписью "условие точки останова"
  4. поставьте условие в поле например "i= = 5"

точка останова будет поражена только тогда, когда мне будет 5.

На Visual Studio 6.0

Alt+F9!!!

установить breakpoint как обычно, щелкните правой кнопкой мыши на точку останова и выберите и устанавливает ваше состояние.

создать условную точку останова функция

1)в окне точки останова, щелкните создать, чтобы создать новую точку останова.

2) на вкладке функция введите обратный для функции. Введите 1 для строки, введите 1 для символа, а затем установите для языка значение Basic.

3) щелкните условие и убедитесь, что установлен флажок условие. Тип instr.длина > 0 для параметра условие убедитесь, что выбран параметр истина, а затем нажмите кнопку ОК.

4) в В диалоговом окне новая точка останова нажмите кнопку ОК.

5) в меню отладка нажмите кнопку Пуск.