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


IDebugReference2

Этот интерфейс представляет ссылку на свойство кадра стека или другое свойство.

Примечание.

IDebugReference2 зарезервирован для будущего использования, и все его методы должны возвращать E_NOTIMPL.

Синтаксис

IDebugReference2 : IUnknown

Примечания для разработчиков

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

Заметки для вызывающих абонентов

Вызовите GetReference , чтобы получить этот интерфейс. GetParent и GetDerivedMostReference также возвращают этот интерфейс.

Методы в порядке таблицы Vtable

В следующей таблице показаны методы IDebugReference2.

Метод Description
GetReferenceInfo Возвращает структуру DEBUG_REFERENCE_INFO , описывающую эту ссылку.
SetValueAsString Задает значение этой ссылки из строки.
SetValueAsReference Задает значение этой ссылки из другой ссылки.
EnumChildren Перечисляет дочерние элементы этой ссылки.
GetParent Возвращает родительский элемент этой ссылки.
GetDerivedMostReference Получает самую производную ссылку на эту ссылку.
GetMemoryBytes Возвращает байты памяти, к которым ссылается эта ссылка.
GetMemoryContext Возвращает контекст памяти для этой ссылки.
GetSize Возвращает размер в байтах этой ссылки.
SetReferenceType Задает этот ссылочный тип.
Сравнить Сравнивает эту ссылку с другой.

Замечания

Примечание.

Это использование свойства не следует путать с тем, что означает переменную члена класса, хотя может IDebugReference2 представлять такую сущность.

  • IDebugProperty2 представляет свойство, в то время как IDebugReference2 представляет ссылку на свойство, как правило, ссылку на объект в отлаживаемой программе.

Основное различие между свойством и ссылкой заключается в том, что свойство ссылается на именованный экземпляр объекта, а ссылка ссылается на неименованный экземпляр. Например, свойство может ссылаться на объект в куче программы."a.b" Другое свойство может ссылаться на тот же объект, что "c.d"и . Для ссылки на это свойство требуется область "a.b" "c.d" или быть в область. Ссылка на этот же объект без имени; Объект можно называть до тех пор, пока память для этого объекта допустима.

Интерфейс IDebugProperty2 можно рассматривать как значение с именем, типом и адресом. С IDebugReference2другой стороны, можно рассматривать как тип и адрес.

Requirements

Заголовок: msdbg.h

Пространство имен: Microsoft.VisualStudio.Debugger.Interop

Сборка: Microsoft.VisualStudio.Debugger.Interop.dll

См. также