Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gibt eine Common Language Runtime Type, einen Typmodifizierer oder Informationen zu einem Typ in einer Metadatentypsignatur an.
Syntax
typedef enum CorElementType {
ELEMENT_TYPE_END = 0x0,
ELEMENT_TYPE_VOID = 0x1,
ELEMENT_TYPE_BOOLEAN = 0x2,
ELEMENT_TYPE_CHAR = 0x3,
ELEMENT_TYPE_I1 = 0x4,
ELEMENT_TYPE_U1 = 0x5,
ELEMENT_TYPE_I2 = 0x6,
ELEMENT_TYPE_U2 = 0x7,
ELEMENT_TYPE_I4 = 0x8,
ELEMENT_TYPE_U4 = 0x9,
ELEMENT_TYPE_I8 = 0xa,
ELEMENT_TYPE_U8 = 0xb,
ELEMENT_TYPE_R4 = 0xc,
ELEMENT_TYPE_R8 = 0xd,
ELEMENT_TYPE_STRING = 0xe,
ELEMENT_TYPE_PTR = 0xf,
ELEMENT_TYPE_BYREF = 0x10,
ELEMENT_TYPE_VALUETYPE = 0x11,
ELEMENT_TYPE_CLASS = 0x12,
ELEMENT_TYPE_VAR = 0x13,
ELEMENT_TYPE_ARRAY = 0x14,
ELEMENT_TYPE_GENERICINST = 0x15,
ELEMENT_TYPE_TYPEDBYREF = 0x16,
ELEMENT_TYPE_I = 0x18,
ELEMENT_TYPE_U = 0x19,
ELEMENT_TYPE_FNPTR = 0x1B,
ELEMENT_TYPE_OBJECT = 0x1C,
ELEMENT_TYPE_SZARRAY = 0x1D,
ELEMENT_TYPE_MVAR = 0x1e,
ELEMENT_TYPE_CMOD_REQD = 0x1F,
ELEMENT_TYPE_CMOD_OPT = 0x20,
ELEMENT_TYPE_INTERNAL = 0x21,
ELEMENT_TYPE_MAX = 0x22,
ELEMENT_TYPE_MODIFIER = 0x40,
ELEMENT_TYPE_SENTINEL = 0x01 | ELEMENT_TYPE_MODIFIER,
ELEMENT_TYPE_PINNED = 0x05 | ELEMENT_TYPE_MODIFIER
} CorElementType;
Elemente
| Mitglied | Description |
|---|---|
ELEMENT_TYPE_END |
Intern verwendet. |
ELEMENT_TYPE_VOID |
Ein leerer Typ. |
ELEMENT_TYPE_BOOLEAN |
Boolescher Typ |
ELEMENT_TYPE_CHAR |
Ein Zeichentyp. |
ELEMENT_TYPE_I1 |
Eine signierte 1-Byte-Ganzzahl. |
ELEMENT_TYPE_U1 |
Eine nicht signierte 1-Byte-Ganzzahl. |
ELEMENT_TYPE_I2 |
Eine signierte 2-Byte-Ganzzahl. |
ELEMENT_TYPE_U2 |
Eine nicht signierte 2-Byte-Ganzzahl. |
ELEMENT_TYPE_I4 |
Eine signierte 4-Byte-Ganzzahl. |
ELEMENT_TYPE_U4 |
Eine nicht signierte 4-Byte-Ganzzahl. |
ELEMENT_TYPE_I8 |
Eine signierte 8-Byte-Ganzzahl. |
ELEMENT_TYPE_U8 |
Eine nicht signierte 8-Byte-Ganzzahl. |
ELEMENT_TYPE_R4 |
Ein 4-Byte-Gleitkomma. |
ELEMENT_TYPE_R8 |
Ein 8-Byte-Gleitkomma. |
ELEMENT_TYPE_STRING |
Ein System.String-Typ. |
ELEMENT_TYPE_PTR |
Ein Zeigertypmodifizierer. |
ELEMENT_TYPE_BYREF |
Ein Verweistypmodifizierer. |
ELEMENT_TYPE_VALUETYPE |
Ein Werttypmodifizierer. |
ELEMENT_TYPE_CLASS |
Ein Klassentypmodifizierer. |
ELEMENT_TYPE_VAR |
Ein Klassenvariablentypmodifizierer. |
ELEMENT_TYPE_ARRAY |
Ein mehrdimensionaler Arraytypmodifizierer. |
ELEMENT_TYPE_GENERICINST |
Ein Typmodifizierer für generische Typen. |
ELEMENT_TYPE_TYPEDBYREF |
Ein typierter Verweis. |
ELEMENT_TYPE_I |
Größe einer systemeigenen ganzzahligen Zahl. |
ELEMENT_TYPE_U |
Größe einer nicht signierten nativen ganzzahligen Zahl. |
ELEMENT_TYPE_FNPTR |
Ein Zeiger auf eine Funktion. |
ELEMENT_TYPE_OBJECT |
Ein System.Object-Typ. |
ELEMENT_TYPE_SZARRAY |
Ein eindimensionaler, null-gebundener Arraytypmodifizierer. |
ELEMENT_TYPE_MVAR |
Ein Modifizierer für methodenvariablen Typ. |
ELEMENT_TYPE_CMOD_REQD |
Eine C-Sprache, die modifizierer erforderlich ist. |
ELEMENT_TYPE_CMOD_OPT |
Optionaler C-Sprachmodifizierer. |
ELEMENT_TYPE_INTERNAL |
Intern verwendet. |
ELEMENT_TYPE_MAX |
Ein ungültiger Typ. |
ELEMENT_TYPE_MODIFIER |
Intern verwendet. |
ELEMENT_TYPE_SENTINEL |
Ein Typmodifizierer, der ein Sentinel für eine Liste einer variablen Anzahl von Parametern ist. |
ELEMENT_TYPE_PINNED |
Intern verwendet. |
Bemerkungen
Die Typmodifizierer bilden die Grundlage für die Darstellung komplexerer Typen. Ein CorElementType Typmodifiziererwert wird auf den Wert angewendet, der in der Typsignatur unmittelbar darauf folgt. Der Wert, der dem CorElementType Typmodifiziererwert folgt, kann ein CorElementType einfacher Typwert, ein Metadatentoken oder ein anderer Wert sein, wie in der folgenden Tabelle angegeben.
Hinweis
Alle Zahlen (Zahl, Argumentanzahl, Metadatentoken, Rang, Anzahl und Gebundene) werden als komprimierte ganze Zahlen gespeichert. Einzelheiten finden Sie auf der ECMA-335 -Common Language Infrastructure (CLI) auf der ECMA-Website.
| Typmodifizierer | Format |
|---|---|
ELEMENT_TYPE_PTR |
<ELEMENT_TYPE_PTR eines Werts CorElementType> |
ELEMENT_TYPE_BYREF |
<ELEMENT_TYPE_BYREF eines Werts CorElementType> |
ELEMENT_TYPE_VALUETYPE |
<ELEMENT_TYPE_VALUETYPE eines Metadatentokens mdTypeDef> |
ELEMENT_TYPE_CLASS |
<ELEMENT_TYPE_CLASS eines Metadatentokens mdTypeDef> |
ELEMENT_TYPE_VAR |
<ELEMENT_TYPE_VAR Zahl> |
ELEMENT_TYPE_ARRAY |
ELEMENT_TYPE_ARRAY einer CorElementType Wertrangfolge1><><gebunden1 ...><<><countN><boundN> |
ELEMENT_TYPE_GENERICINST |
<ELEMENT_TYPE_GENERICINST ein mdTypeDef Metadatentokenargument<>Count<>arg1> ... <argN> |
ELEMENT_TYPE_FNPTR |
<ELEMENT_TYPE_FNPTR vollständige Signatur für die Funktion, einschließlich Aufrufkonvention> |
ELEMENT_TYPE_SZARRAY |
ELEMENT_TYPE_SZARRAY eines Werts <CorElementType> |
ELEMENT_TYPE_MVAR |
<ELEMENT_TYPE_MVAR Zahl> |
ELEMENT_TYPE_CMOD_REQD |
<ELEMENT_TYPE_amdTypeRef- oder mdTypeDef Metadatentoken> |
ELEMENT_TYPE_CMOD_OPT |
<E_T_CMOD_OPT eines oder mdTypeDef eines mdTypeRef Metadatentokens> |
Anforderungen
Plattformen: Siehe .NET unterstützte Betriebssysteme.
Kopfball: CorHdr.h
.NET-Versionen: Verfügbar seit .NET Framework 1.0