Поделиться через


Псевдопеременные

Этот раздел применим к:

Выпуск

Visual Basic

C#

F#

C++

Web Developer

Express

Тема применяется Тема применяется Тема не применяется Тема применяется Тема применяется

Pro, Premium и Ultimate

Тема применяется

Тема применяется

Тема не применяется

Тема применяется

Тема применяется

Псевдопеременные - это термин, используемый для отображения определенных сведений в окне переменных или в диалоговом окне Быстрая проверка. Псевдопеременная вводится таким же способом, что и обычная переменная. Псевдопеременные не являются переменными, однако они не соответствуют именам переменных в программе.

Пример

Предположим, что вы написали приложение в машинном коде, и требуется просмотреть общее число дескрипторов в приложении. В окне Контрольные значения можно ввести следующую псевдопеременную в столбце Имя, затем нажать Ввод для вычисления:

$handles

В машинном коде можно использовать псевдопеременные, показанные в этой таблице:

Псевдопеременная

Function

$handles

Показывает число дескрипторов в приложении.

$vframe

Выводит адрес в текущем кадре стека.

$TID

Отображает ID текущего потока.

$ENV

Отображает размер блока среды.

Попытка изменить размер блока среды (в столбце Значение) вызывает отображение содержимого блока среды в окне Выходные данные при нажатии клавиши Ввод. Это не изменяет размер блока среды.

$CMDLINE

Отображает размер командной строки, которая запустила программу.

При попытке изменить размер (в столбце Значение значение) вызывает отображение командной строки в окне Выходные данные при нажатии клавиши возврата. Это не изменяет длину строки командной строки.

$registername

или

@registername

Отображает содержимое регистра registername.

Как правило, можно отобразить содержимое регистра простым вводом имени регистра. Единственный момент, когда необходимо использовать такой синтаксис, это когда имя регистра перегружает имя переменной. Если имя регистра совпадает с именем переменной в текущей области, отладчик интерпретирует имя как имя переменной. Это когда $registername или @registername выходит удобным.

$clk

Отображает время в циклах часов.

$user

Отображает структуру данных учетной записи для учетной записи, под которой выполняется приложение. По соображениям безопасности сведения о паролях не отображаются.

В C# и Visual Basic можно использовать псевдопеременные, указанные в этой таблице:

Псевдопеременная

Function

$exception

Отображение сведений о последнем исключении. Если не произошло исключение, вычисление $exception отображает сообщение об ошибке.

В Visual C# только при отключенном помощнике исключений, $exception автоматически добавляется в окно Локальные переменные при возникновении исключения.

$user

Отображает структуру данных учетной записи для учетной записи, под которой выполняется приложение. По соображениям безопасности сведения о паролях не отображаются.

В Visual Basic можно использовать псевдопеременные, указанные в этой таблице:

Псевдопеременная

Function

$delete или $$delete

Удаляет неявную переменную, которая была создана в окне интерпретации. Используется следующий синтаксис: $delete, переменная или $delete, переменная.

$objectids или $listobjectids

Отображает все идентификаторы активных объектов в виде дочерних элементов указанного выражения. Используется следующий синтаксис: $objectid, выражение или $listobjectids, выражение.

$Н#

Отображает объект с идентификатором N.

$dynamic

Отображает специальный узел динамического представления для объекта, который реализует IDynamicMetaObjectProvider. Интерфейс. Синтаксис: $dynamic, объект. Эта функция применима только к коду, который использует платформу .NET Framework версии 4. См. раздел Динамическое представление.

См. также

Задачи

Практическое руководство. Просмотр выражения в отладчике

Другие ресурсы

Окна переменных