IModelObject::TryCastToRuntimeType 方法 (dbgmodel.h)
TryCastToRuntimeType 方法會要求偵錯主機執行分析,並判斷實際運行時間類型 (,例如:指定物件的大多數衍生類別) 。 使用的確切分析是偵錯主機特有的,而且可能包含 RTTI (C++ 執行時間類型資訊) 、檢查 V-Table (虛擬函式數據表) 物件結構,或任何其他表示主機可用來從靜態類型可靠地判斷動態/運行時間類型。 無法轉換成運行時間類型並不表示此方法呼叫將會失敗。 在這種情況下,方法會傳回指定的物件, (輸出自變數中的這個指標) 。
語法
HRESULT TryCastToRuntimeType(
_COM_Errorptr_ IModelObject **runtimeTypedObject
);
參數
runtimeTypedObject
這個自變數中會傳回指定對象的實例轉換成其動態/運行時間類型的實例。 如果分析在靜態類型中找不到變更,則指定的物件 (此指標) 可能會傳回此輸出中的其他參考) (。
傳回值
這個方法會傳回 HRESULT,指出成功或失敗。 請注意,找不到衍生類型的分析不是此處定義的失敗。
備註
程式碼範例
ComPtr<IModelObject> spUnknown; /* get an IUnknown pointer to some CFoo */
ComPtr<IModelObject> spRuntimeObj;
if (SUCCEEDED(spUnknown->TryCastToRuntimeType(&spRuntimeObj)))
{
// spRuntimeObj will refer to the CFoo.
}
規格需求
需求 | 值 |
---|---|
標頭 | dbgmodel.h |