matrices, funciones, punteros, referencias, clases, sindicatos, enumeraciones y punteros a miembros son tipos compuestos .¿Por qué las enumeraciones se consideran tipos compuestos?
Mi comprensión de un tipo de compuesto es que se basa en otro tipo (s). Por ejemplo, T[n]
, T*
y T&
se basan en T
. Entonces, ¿en qué otro (s) tipo (s) se basa una enumeración?
O si mi comprensión de los tipos de compuesto no es correcta, ¿qué es exactamente acerca de un tipo que hace que sea un tipo de compuesto? Es compuesto simplemente un sinónimo de definida por el usuario?
En C, el término "tipo derivado" en lugar de "tipo compuesto" se usa en su lugar, y en C enums no son tipos derivados. Esto me hace pensar que el "tipo compuesto" en C++ no solo está destinado a los tipos compuestos para un nuevo tipo, sino también a un nuevo tipo de valores. La descripción de las enumeraciones dadas endurece las sospechas que dicen "enumeraciones, que comprenden un conjunto de valores constantes nombrados". –
@Johannes enumeraciones en C y C++ en las enumeraciones son bastante diferentes bestias, ¿verdad? Por ejemplo, puede asignar valores integrales a variables enum en C pero no en C++. – fredoverflow
correcto, pero no obstante, en ambos idiomas definen un tipo propio. Pero supongo que estoy interpretando demasiado en estos dos términos. "tipo compuesto" de hecho parece referirse solo a la acción de los tipos compuestos, y el tipo subyacente como AndreyT dice que para enums es el tipo compuesto, parece :) –