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