IMetaDataEmit::DefineTypeDef 方法
更新:2010 年 6 月
為 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] 基底類別的語彙基元。 它必須為mdTypeDef或mdTypeRef語彙基元。rtkImplements
[in] 語彙基元的陣列,指定這個類別或介面實作的介面。ptd
[out] 指派的 mdTypeDef 語彙基元。
備註
dwTypeDefFlags 中的旗標指定所建立的型別為一般型別系統參考型別 (類別或介面) 或一般型別系統值型別。
取決於提供的參數,此方法的副作用,還可以創建mdInterfaceImpl記錄的每個介面,是繼承或實現此類型。 但是,此方法不會傳回這些mdInterfaceImpl語彙基元中的任何一個。 如果用戶端稍後要新增或修改mdInterfaceImpl語彙基元,必須使用IMetaDataImport介面列舉它們。 如果您想要使用 [default]介面的 COM 語義,應提供預設介面做為 rtkImplements 中的第一個項目; 在類別設定的自訂屬性將指出該類別具有預設的介面 (一律解定為該類別宣告的第一個 mdInterfaceImpl 語彙基元)。
每個 rtkImplements 陣列的元素都承載一個 mdTypeDef或mdTypeRef 語彙基元。 陣列中的最後一個元素必須是 mdTokenNil。
需求
**平台:**請參閱 .NET Framework 系統需求。
**標頭:**Cor.h
**程式庫:**當做 MSCorEE.dll 中的資源使用
**.NET Framework 版本:**4、3.5 SP1、3.5、3.0 SP1、3.0、2.0 SP1、2.0、1.1、1.0
請參閱
參考
變更記錄
日期 |
記錄 |
原因 |
---|---|---|
2010 年 6 月 |
新增使用方式詳細資訊。 |
內容 Bug 修正。 |