Definición - ¿Qué significa Enum?
Enum, en C #, es una palabra clave que representa un tipo de valor para declarar un conjunto de constantes con nombre.
Una enumeración ayuda a definir una serie de constantes integrales relacionadas que representan valores especiales dentro de un módulo de código. Se puede usar una enumeración en una declaración de cambio, que se usa como una declaración de toma de decisiones para comparar valores numéricos. Ayuda a crear, mantener y mejorar el código autodocumentado que necesita constantes adicionales en las versiones posteriores del software. Se prefiere una enumeración mientras representa un conjunto de valores mutuamente excluyentes. Se puede usar para representar bitflags y, por lo tanto, se puede usar para realizar operaciones lógicas como AND, OR, XOR, etc.
Una enumeración tiene una mejor ventaja que usar un tipo numérico integral porque especifica claramente el rango de valores que puede usar el código del cliente, y los valores se muestran en Intellisense de Visual Studio. El uso de enumeraciones trae la ventaja de la seguridad de tipos al asignar la variable numérica en un programa con valores de enumeración significativos.
Enum también se denomina enumeración o lista de enumeradores.
Techinfo explica Enum
Al declarar un valor de tipo de enumeración, los detalles pueden incluir el nombre, la accesibilidad, el tipo subyacente y los nombres de los miembros de la enumeración. El tipo subyacente predeterminado, que es un entero de 32 bits (int), se puede reemplazar con cualquier tipo integral (excepto "char"). El tipo predeterminado de una enumeración es "int".
Por ejemplo, se puede declarar una enumeración para enumerar los meses de un año para mostrar tanto en forma de entero como de cadena.
El valor de un miembro de enumeración se puede asignar explícita o implícitamente. Para un miembro de enumeración que no se asigna explícitamente, el primer valor se establece en cero y los miembros posteriores tienen cada uno un valor asociado que es igual a uno más que el valor de su predecesor. Sin embargo, los valores predeterminados se pueden anular utilizando inicializadores.
Dos miembros de una enumeración no pueden tener el mismo nombre, pero pueden compartir el mismo valor asociado. Los valores especificados para los miembros de una enumeración deben estar dentro del rango del tipo subyacente de la enumeración. El valor subyacente de un miembro enum se puede obtener realizando una conversión explícita para convertirlo en su tipo integral.
Esta definición se escribió en el contexto de C #