Dela via


IMetaDataEmit::D efineTypeDef-metod

Skapar en typdefinition för en vanlig språkkörningstyp och hämtar en metadatatoken för den typdefinitionen.

Syntax

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

Parametrar

szTypeDef
[i] Namnet på typen i Unicode.

dwTypeDefFlags
[i] TypeDef Attribut. Det här är en bitmask med CoreTypeAttr värden.

tkExtends
[i] Token för basklassen. Det måste vara antingen en mdTypeDef eller en mdTypeRef token.

rtkImplements
[i] En matris med token som anger de gränssnitt som den här klassen eller gränssnittet implementerar.

ptd
[ut] Den mdTypeDef tilldelade token.

Kommentarer

En flagga i dwTypeDefFlags anger om typen som skapas är en vanlig typ av systemreferenstyp (klass eller gränssnitt) eller en vanlig typ av systemvärdetyp.

Beroende på de angivna parametrarna kan den här metoden, som en bieffekt, också skapa en mdInterfaceImpl post för varje gränssnitt som ärvs eller implementeras av den här typen. Den här metoden returnerar dock inte någon av dessa mdInterfaceImpl token. Om en klient vill lägga till eller ändra en mdInterfaceImpl token senare måste den IMetaDataImport använda gränssnittet för att räkna upp dem. Om du vill använda COM-semantik för [default] gränssnittet bör du ange standardgränssnittet som det första elementet i rtkImplements. Ett anpassat attribut som anges i klassen anger att klassen har ett standardgränssnitt (som alltid antas vara den första mdInterfaceImpl token som deklareras för klassen).

Varje element i matrisen rtkImplements innehåller en eller mdTypeRef en mdTypeDef token. Det sista elementet i matrisen måste vara mdTokenNil.

Krav

Plattformar: Se Systemkrav.

Huvudet: Cor.h

Bibliotek: Används som en resurs i MSCorEE.dll

.NET Framework versioner: Tillgänglig sedan 1.0

Se även