Практическое руководство. Просмотр выражения в отладчике
Этот раздел применим к:
Выпуск |
Visual Basic |
C# |
F# |
C++ |
Web Developer |
---|---|---|---|---|---|
Express |
|||||
Pro, Premium и Ultimate |
Окно Контрольные значения и диалоговое окно Быстрая проверка – это окна, в которых можно вводить имена переменных и выражения для просмотра их значений во время сеанса отладки.
В диалоговом окне Быстрая проверка в каждый момент времени можно просматривать одну переменную или выражение. Это окно удобно, когда нужно быстро просмотреть одиночное значение или более крупную структуру данных. В окне Контрольные значения можно вести несколько переменных и выражений, которые требуется просматривать в течение всего сеанса отладки. В некоторых выпусках Visual Studio имеется несколько окон Контрольные значения, которые нумеруются от Контрольные значения 1 до Контрольные значения 4.
Дополнительные сведения о порядке открытия окна Контрольные значения или Быстрая проверка см. в разделе Вызов окна переменной.
Имя переменной является простейшим выражением, которое можно ввести. При отладке машинного кода кроме имен переменных можно использовать имена регистров. Тем не менее, отладчик способен воспринимать и куда более сложные выражения. Например, можно ввести следующее выражение, определяющее среднее значение трех переменных:
(var1 + var2 + var3) / 3
В C# вместо имен объектов можно вводить их идентификаторы или псевдонимы.
В окне Контрольные значения можно вводить большинство допустимых выражений языка. Дополнительные сведения см. в разделе Выражения в отладчике.
При программировании в машинных кодах иногда может потребоваться уточнить контекст имени переменной или выражения, содержащего имя переменной. Под контекстом здесь понимается функция, исходный файл и модуль, где находится переменная. Для этого можно использовать синтаксис оператора контекста. Дополнительные сведения см. в разделе Оператор контекста (Выражения языка C/C++).
Выражения, влияющие на состояние программы
Вычисление некоторых выражений может привести к изменению значения некоторой переменной или иным способом повлиять на состояние программы. Например, вычисление следующего выражения изменяет значение var1:
var1 = var2
Выражения, которые изменяют данные, называют выражениями с побочными эффектами. Если ввести выражение с побочным эффектом в окне Контрольные значения, побочный эффект будет возникать при каждом вычислении выражения в окне Контрольные значения. Если вы не знаете, что у выражения есть побочные эффекты, то результаты могут стать непредсказуемыми. Если известно, что у выражения есть побочные эффекты, то оно вычисляется только один раз при первом его вводе. Последующие вычисления не выполняются. Этот режим можно отменить, щелкнув значок обновления, который стоит рядом со значением.
Непредвиденные побочные эффекты часто являются результатом выполнения функций. Например, можно ввести следующий вызов функции в окне Контрольные значения:
Func1(var1)
При вызове функции из окна Контрольные значения или Быстрая проверка вызываемая функция может изменить значения переменных, что приведет к побочному эффекту. Одним из способов, позволяющих избежать возможные непредвиденные побочные эффекты при выполнении функций, является отключение автоматического вызова функций в диалоговом окне Параметры. При этом будет отключено автоматическое вычисление новых языковых конструкций (например, свойств). Тем не менее, это безопаснее.
Примечание
Иногда при просмотре выражения в окне Контрольные значения возникает значок обновления, который имеет вид двух зеленых стрелок внутри зеленого круга, направленных в противоположных направлениях.Его появление скорее всего обусловлено тем, что был отключен автоматический вызов функций.Значок обновления указывает на ошибку или на то, что значения являются устаревшими.Дополнительные сведения см. в разделе Практическое руководство. Обновление просматриваемых значений.
В машинном коде и коде C# можно задавать формат вывода значений выражений с помощью описателей формата. Дополнительные сведения см. в разделах Определители формата в C++ и Определители формата в C#.
Отладчик Visual Studio автоматически раскрывает данные распространенных типов так, чтобы отобразить наиболее важные их элементы. Можно включить такой режим и для пользовательских типов данных. Дополнительные сведения см. в разделах Отображение пользовательских типов данных и Визуализаторы.
Примечание
Отображаемые диалоговые окна и команды меню могут отличаться от описанных в справке в зависимости от текущих настроек или выпуска.Чтобы изменить параметры, выберите в меню Сервис пункт Импорт и экспорт параметров.Дополнительные сведения см. в разделе Работа с параметрами.
Вычисление выражения в окне "Контрольные значения"
В окне Контрольные значения щелкните пустую строку в столбце Имя. В этот момент отладчик должен находиться в режиме приостановки. Введите или вставьте имя переменной или выражение, которое нужно просмотреть.
—или—
Перетащите переменную в строку в окне Контрольные значения.
Нажмите клавишу ВВОД.
Результат появится в столбце Значение. При вводе имени переменной массива или объекта в столбце Имя рядом с именем отображается список-дерево. Разверните или сверните переменную в столбце Имя.
Выражение остается в окне Контрольные значения до тех пор, пока не будет удалено.
Вычисление выражения в окне "Быстрая проверка"
В текстовое поле Выражение диалогового окна Быстрая проверка введите или вставьте переменную, регистр или выражение.
Нажмите кнопку Пересчитать или клавишу ВВОД.
Значение будет отображено в поле Текущее значение.
При вводе имени переменной массива или объекта в поле Выражение, в поле Текущее значение рядом с именем будет отображен список-дерево. Разверните или сверните переменную в столбце Имя.
Повторное вычисление заданного ранее выражения в окне "Быстрая проверка"
В диалоговом окне Быстрая проверка щелкните стрелку вниз, которая находится справа от поля Выражение.
Выберите одно из предыдущих выражений из раскрывающегося списка.
Нажмите кнопку Пересчитать.
См. также
Задачи
Практическое руководство. Использование окон переменных отладчика
Другие ресурсы
Журнал изменений
Дата |
Журнал |
Причина |
---|---|---|
Декабрь 2010 |
Добавлена ссылка на процедуру, описывающую порядок отображения окон Контрольные значения и Быстрая проверка. |
Обратная связь от клиента. |