IMetaDataEmit::DefineTypeDef 方法

建立 Common Language Runtime 類型的類型定義,並取得該類型定義的中繼資料語彙基元。

語法

HRESULT DefineTypeDef (
    [in]  LPCWSTR     szTypeDef,
    [in]  DWORD       dwTypeDefFlags,
    [in]  mdToken     tkExtends,
    [in]  mdToken     rtkImplements[],
    [out] mdTypeDef   *ptd  
);  

參數

szTypeDef
[in] 使用 Unicode 的類型名稱。

dwTypeDefFlags
[in] TypeDef 屬性。 這是 CoreTypeAttr 值的位元遮罩。

tkExtends
[in] 基底類別的語彙基元。 它必須是 mdTypeDefmdTypeRef 語彙基元。

rtkImplements
[in] 語彙基元陣列,指定這個類別或介面所實作的介面。

ptd
[out] 指派的 mdTypeDef 語彙基元。

備註

dwTypeDefFlags 中的旗標會指定所建立的類型是一般型別系統參考類型 (類別或介面) 或一般型別系統實值型別。

根據所提供的參數,此方法作為副作用也會針對此類型所繼承或實作的每個介面建立 mdInterfaceImpl 記錄。 不過,這個方法不會傳回任何這類 mdInterfaceImpl 語彙基元。 如果用戶端稍後想要新增或修改 mdInterfaceImpl 語彙基元,則必須使用 IMetaDataImport 介面來列舉它們。 如果您想要使用 [default] 介面的 COM 語意,您應該提供預設介面做為 rtkImplements 中的第一個元素;在類別上設定的自訂屬性會指出類別具有預設介面 (一律假設為類別的第一個宣告的 mdInterfaceImpl 語彙基元)。

rtkImplements 陣列的每個元素都會保存 mdTypeDefmdTypeRef 語彙基元。 陣列中的最後一個元素必須為 mdTokenNil

規格需求

平台:請參閱系統需求

標頭:Cor.h

程式庫:作為 MSCorEE.dll 中的資源使用

.NET Framework版本:自 1.0 起可用

另請參閱