CorElementType (Enumeración)
Especifica un Type de Common Language Runtime, un modificador de tipo o información sobre un tipo en una firma de tipo de metadatos.
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,
ELEMENT_TYPE_R4_HFA = 0x06 | ELEMENT_TYPE_MODIFIER,
ELEMENT_TYPE_R8_HFA = 0x07 | ELEMENT_TYPE_MODIFIER
} CorElementType;
Miembros
Miembro |
Descripción |
---|---|
ELEMENT_TYPE_END |
De uso interno. |
ELEMENT_TYPE_VOID |
Un tipo void. |
ELEMENT_TYPE_BOOLEAN |
Un tipo booleano |
ELEMENT_TYPE_CHAR |
Un tipo de caracteres. |
ELEMENT_TYPE_I1 |
Entero de 1 byte con signo. |
ELEMENT_TYPE_U1 |
Entero de 1 byte sin signo. |
ELEMENT_TYPE_I2 |
Entero de 2 bytes con signo. |
ELEMENT_TYPE_U2 |
Entero de 2 bytes sin signo. |
ELEMENT_TYPE_I4 |
Entero de 4 bytes con signo. |
ELEMENT_TYPE_U4 |
Entero de 4 bytes sin signo. |
ELEMENT_TYPE_I8 |
Entero de 8 bytes con signo. |
ELEMENT_TYPE_U8 |
Entero de 8 bytes sin signo. |
ELEMENT_TYPE_R4 |
Punto flotante de 4 bytes. |
ELEMENT_TYPE_R8 |
Punto flotante de 8 bytes. |
ELEMENT_TYPE_STRING |
Tipo System.String. |
ELEMENT_TYPE_PTR |
Modificador de tipo de puntero. |
ELEMENT_TYPE_BYREF |
Modificador de tipo referencia. |
ELEMENT_TYPE_VALUETYPE |
Modificador de tipo de valor. |
ELEMENT_TYPE_CLASS |
Modificador de tipo clase. |
ELEMENT_TYPE_VAR |
Modificador de tipo variable de clase. |
ELEMENT_TYPE_ARRAY |
Modificador de tipo matriz multidimensional. |
ELEMENT_TYPE_GENERICINST |
Modificador de tipo para tipos genéricos. |
ELEMENT_TYPE_TYPEDBYREF |
Referencia con tipo. |
ELEMENT_TYPE_I |
Tamaño de un entero nativo. |
ELEMENT_TYPE_U |
Tamaño de un entero nativo sin signo. |
ELEMENT_TYPE_FNPTR |
Puntero a una función. |
ELEMENT_TYPE_OBJECT |
Tipo System.Object. |
ELEMENT_TYPE_SZARRAY |
Modificador de tipo matriz unidimensional, de límite inferior cero. |
ELEMENT_TYPE_MVAR |
Modificador de tipo variable de método. |
ELEMENT_TYPE_CMOD_REQD |
Modificador requerido por el lenguaje C. |
ELEMENT_TYPE_CMOD_OPT |
Modificador opcional para el lenguaje C. |
ELEMENT_TYPE_INTERNAL |
De uso interno. |
ELEMENT_TYPE_MAX |
Tipo no válido. |
ELEMENT_TYPE_MODIFIER |
De uso interno. |
ELEMENT_TYPE_SENTINEL |
Modificador de tipo que es un centinela para una lista de un número variable de parámetros. |
ELEMENT_TYPE_PINNED |
De uso interno. |
ELEMENT_TYPE_R4_HFA |
De uso interno. |
ELEMENT_TYPE_R8_HFA |
De uso interno. |
Comentarios
Los modificadores de tipo forman la base para representar tipos más complejos. Un valor de modificador de tipo CorElementType se aplica al valor que inmediatamente lo sigue en la firma del tipo. El valor que sigue al valor de modificador de tipo CorElementType puede ser un valor de tipo simple CorElementType, un token de metadatos u otro valor según lo especificado en la tabla siguiente.
![]() |
---|
Todos los números (número, argumento Count, token de metadatos, rank, count y bound) se guardan como enteros comprimidos.Vea Standard ECMA-335 - Common Language Infrastructure (CLI) del sitio web de ECMA para obtener información detallada. |
Modificador de tipo |
Format |
---|---|
ELEMENT_TYPE_PTR |
ELEMENT_TYPE_PTR <un valor CorElementType> |
ELEMENT_TYPE_BYREF |
ELEMENT_TYPE_BYREF <un valor CorElementType> |
ELEMENT_TYPE_VALUETYPE |
ELEMENT_TYPE_VALUETYPE <un token de metadatos mdTypeDef> |
ELEMENT_TYPE_CLASS |
ELEMENT_TYPE_CLASS <un token de metadatos mdTypeDef> |
ELEMENT_TYPE_VAR |
ELEMENT_TYPE_VAR <número> |
ELEMENT_TYPE_ARRAY |
ELEMENT_TYPE_ARRAY <un valor CorElementType> <rank> <count1> <bound1> ... <countN> <boundN> |
ELEMENT_TYPE_GENERICINST |
ELEMENT_TYPE_GENERICINST <un token de metadatos mdTypeDef> <argumento Count> <arg1> ... <argN> |
ELEMENT_TYPE_FNPTR |
ELEMENT_TYPE_FNPTR <firma completa para la función, que incluye la convención de llamada> |
ELEMENT_TYPE_SZARRAY |
ELEMENT_TYPE_SZARRAY <un valor CorElementType> |
ELEMENT_TYPE_MVAR |
ELEMENT_TYPE_MVAR <número> |
ELEMENT_TYPE_CMOD_REQD |
ELEMENT_TYPE_<un token de metadatos mdTypeRef o mdTypeDef> |
ELEMENT_TYPE_CMOD_OPT |
E_T_CMOD_OPT <un token de metadatos mdTypeRef o mdTypeDef> |
Requisitos
Plataformas: vea Requisitos de sistema de .NET Framework.
Encabezado: CorHdr.h
Versiones de .NET Framework: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0, 1.1, 1.0