IMetaDataEmit::DefineTypeDef – metoda
Vytvoří definici typu pro typ modulu CLR (Common Language Runtime) a získá token metadat pro definici daného typu.
Syntaxe
HRESULT DefineTypeDef (
[in] LPCWSTR szTypeDef,
[in] DWORD dwTypeDefFlags,
[in] mdToken tkExtends,
[in] mdToken rtkImplements[],
[out] mdTypeDef *ptd
);
Parametry
szTypeDef
[v] Název typu v kódování Unicode.
dwTypeDefFlags
[v] TypeDef
Atributy. Toto je bitová maska CoreTypeAttr
hodnot.
tkExtends
[v] Token základní třídy. Musí to být buď token, mdTypeDef
nebo mdTypeRef
.
rtkImplements
[v] Pole tokenů určující rozhraní, které tato třída nebo rozhraní implementuje.
ptd
[out] Přiřazený mdTypeDef
token.
Poznámky
Příznak v dwTypeDefFlags
určuje, jestli je vytvářený typ běžným referenčním typem systému typů (třída nebo rozhraní) nebo běžným typem hodnot systému typů.
V závislosti na zadaných parametrech může tato metoda jako vedlejší efekt také vytvořit mdInterfaceImpl
záznam pro každé rozhraní, které je zděděno nebo implementováno tímto typem. Tato metoda však nevrací žádný z těchto mdInterfaceImpl
tokenů. Pokud chce klient později přidat nebo upravit mdInterfaceImpl
token, musí k jeho výčtu IMetaDataImport
použít rozhraní. Pokud chcete použít sémantiku [default]
COM rozhraní, měli byste jako první prvek v rtkImplements
zadat výchozí rozhraní. Vlastní atribut nastavený ve třídě bude znamenat, že třída má výchozí rozhraní (které se vždy předpokládá jako první mdInterfaceImpl
token deklarovaný pro třídu).
Každý prvek rtkImplements
pole obsahuje mdTypeDef
token nebo mdTypeRef
. Poslední prvek v poli musí být mdTokenNil
.
Požadavky
Platformy: Viz Požadavky na systém.
Záhlaví: Cor.h
Knihovny: Používá se jako prostředek v MSCorEE.dll
Verze rozhraní .NET Framework: K dispozici od verze 1.0