共用方式為


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] 基底類別的語彙基元。 它必須為mdTypeDefmdTypeRef語彙基元。

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

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

備註

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

取決於提供的參數,此方法的副作用,還可以創建mdInterfaceImpl記錄的每個介面,是繼承或實現此類型。 但是,此方法不會傳回這些mdInterfaceImpl語彙基元中的任何一個。 如果用戶端稍後要新增或修改mdInterfaceImpl語彙基元,必須使用IMetaDataImport介面列舉它們。 如果您想要使用 [default]介面的 COM 語義,應提供預設介面做為 rtkImplements 中的第一個項目; 在類別設定的自訂屬性將指出該類別具有預設的介面 (一律解定為該類別宣告的第一個 mdInterfaceImpl 語彙基元)。

每個 rtkImplements 陣列的元素都承載一個 mdTypeDefmdTypeRef 語彙基元。 陣列中的最後一個元素必須是 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

請參閱

參考

IMetaDataEmit 介面

IMetaDataEmit2 介面

變更記錄

日期

記錄

原因

2010 年 6 月

新增使用方式詳細資訊。

內容 Bug 修正。