IDebugReference2
此接口表示对堆栈帧属性或其他属性的引用。
注意
IDebugReference2
保留供将来使用,其所有方法都应返回 E_NOTIMPL
。
语法
IDebugReference2 : IUnknown
实现者须知
DE 实现此接口来表示对特定类型的值的引用。 例如,该值可能是表达式计算的结果、用于显示内存的内存上下文或寄存器列表及其值的结果的数字值。
对调用者的说明
调用 GetReference 以获取此接口。 GetParent 和 GetDerivedMostReference 也返回此接口。
Vtable 顺序中的方法
下表显示了 IDebugReference2
方法。
方法 | 说明 |
---|---|
GetReferenceInfo | 获取描述 此引用的DEBUG_REFERENCE_INFO 结构。 |
SetValueAsString | 设置字符串中此引用的值。 |
SetValueAsReference | 从另一个引用设置此引用的值。 |
EnumChildren | 枚举此引用的子级。 |
GetParent | 获取此引用的父级。 |
GetDerivedMostReference | 获取此引用的最派生引用。 |
GetMemoryBytes | 获取此引用引用所引用的内存字节。 |
GetMemoryContext | 获取此引用的内存上下文。 |
GetSize | 获取此引用的大小(以字节为单位)。 |
SetReferenceType | 设置此引用类型。 |
比较 | 将此引用与其他引用进行比较。 |
备注
注意
不应将这种使用“property”与这意味着类的成员变量混淆,尽管可以 IDebugReference2
表示此类实体。
- IDebugProperty2 表示属性,而
IDebugReference2
表示对属性的引用,通常是对正在调试的程序中的对象的引用。
属性和引用之间的主要区别是属性引用对象的命名实例,而引用引用引用未命名实例。 例如,属性可能引用程序堆 "a.b"
中的对象。 另一个属性可能引用同一对象 "c.d"
。 引用此属性的方法要求或"a.b"
"c.d"
处于范围内。 对同一对象的引用是无名称的;只要该对象的内存有效,就可以引用该对象的内存。
IDebugProperty2
可以将接口视为具有名称、类型和地址的值。 另一 IDebugReference2
方面,可以将其视为类型和地址。
要求
标头:msdbg.h
命名空间:Microsoft.VisualStudio.Debugger.Interop
程序集:Microsoft.VisualStudio.Debugger.Interop.dll