IModelObject::GetRawReference 方法 (dbgmodel.h)
GetRawReference 方法在给定对象中查找本机构造,并返回对它的引用。 此类构造可以是字段、基类、基类中的字段、成员函数等。请务必区分此处返回的引用 (ObjectTargetObjectReference) 类型的对象与语言引用 (例如 C++ & 或 && 样式引用) 。
语法
HRESULT GetRawReference(
SymbolKind kind,
PCWSTR name,
ULONG searchFlags,
_COM_Errorptr_ IModelObject **object
);
参数
kind
指示要提取 (的本机符号类型,例如:基类或数据成员)
name
要提取的本机构造的名称。
searchFlags
一组可选的标志,用于指定本机构造的搜索行为。
object
此处将返回表示提取的本机构造的 IModelObject 。 请注意,在某些情况下,即使 HRESULT 指示失败,也可能在此参数中返回扩展的错误信息。
返回值
此方法返回指示成功或失败的 HRESULT。 在某些情况下,返回值E_BOUNDS (或E_NOT_SET) 表示找不到字段。
注解
代码示例
ComPtr<IModelObject> spMessage; /* get a tagMSG */
ComPtr<IModelObject> spMsgIdRef;
if (SUCCEEDED(spMessage->GetRawReference(SymbolField, L"message", RawSearchNone, &spMsgIdRef)))
{
// spMsgIdRef is an ObjectTargetObjectReference. GetLocation/GetTypeInfo/GetTargetInfo
// will return as they would for the value. spMsgIdRef can be passed to Dereference or to
// the EE to assign a value, etc...
ComPtr<IModelObject> spMsgId;
if (SUCCEEDED(spMsgIdRef->Dereference(&spMsgId)))
{
// spMsgId contains the message number. Unbox with GetIntrinsicValueAs.
}
}
要求
要求 | 值 |
---|---|
Header | dbgmodel.h |