Share via


IMetaDataEmit::DefineTypeDef メソッド

共通言語ランタイム型の型定義を作成し、その型定義のメタデータ トークンを取得します。

構文

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 である必要があります。

必要条件

:システム要件」を参照してください。

ヘッダー: Cor.h

ライブラリ: MSCorEE.dll でリソースとして使用されます

.NET Framework のバージョン: 1.0 以降で使用可能

関連項目