Uso de enumeración en C ++

Uso de enumeración en C ++
El tipo de datos definido por el usuario se declara utilizando una enumeración que contiene un conjunto de constantes. Hace que sea más fácil leer y administrar el código. La palabra clave enumer se usa para definir la enumeración. Un conjunto particular de valores se definen por enumeración. Los valores que se utilizan en la enumeración se denominan enumeradores. Los valores de la enumeración se pueden analizar fácilmente y usarse en un cambiar declaración. Se han mostrado diferentes usos de la enumeración en C ++ en este tutorial.

Sintaxis:

La sintaxis de declarar enumeración se da a continuación. El enumer La palabra clave se utiliza para declarar el tipo de datos de enumeración y los nombres de enumer Los valores están separados por una coma (,). Además, el valor predeterminado de la enumeración comienza desde 0.

enum enum-type-name v1, v2, v3 ... vn;

Ejemplo 1: Convertir el número en valores de enum

La forma de convertir cualquier valor de número en un valor enum se muestra en el siguiente ejemplo. Un enum de 12 elementos ha sido declarado en el código. Se tomará un valor entero del usuario. Si el valor de entrada está dentro de 0 a 11, entonces el valor se convertirá en el valor enum. A continuación, la posición del mes se establecerá en función del valor enum, y la cadena formateada se imprimirá más tarde:

// Incluye la biblioteca necesaria
#incluir
usando el espacio de nombres STD;
int main ()

// Declarar el enum
Mes de la enum enero, febrero, mar, abril, mayo, junio, julio, agosto, septiembre, octubre, nov, dec;
// Declarar las variables necesarias
Mes enumvar;
cadena mval, pos = "th";
int mnum;
// tomar cualquier valor entero del usuario
cout mnum;
// Verifique la entrada
if (mnum> = 0 && mnum <=11)

// convertir el número en enum
enumvar = (mes) mnum;
if (enumvar+1 == 1)
pos = "st";
más if (enumvar+1 == 2)
pos = "nd";
más if (enumvar+1 == 3)
pos = "rd";
cout << "The " << enumVar + 1 << pos <<" month of the year." << "\n";

demás
cout << "Invalid number.";
regresar 0;

Producción:

La siguiente salida aparecerá después de ejecutar el código anterior si se toma 6 como valor de entrada:

Ejemplo 2: Convierta los valores de enum en la cadena

En el ejemplo anterior, se accedió al valor de la variable enum. Sin embargo, si desea imprimir el texto en particular para el valor de enum en particular, debe usar una declaración condicional. La forma de convertir el valor de enum en la cadena utilizando una instrucción de caso de interruptor se muestra en el siguiente ejemplo. El enum de 7 elementos ha sido declarado en el código donde los nombres del enum son nombres de 7 semanas. Después de tomar una entrada dentro de 0 a 6, el valor del valor de enumación correspondiente se convertirá en el nombre de los días de semana utilizando una instrucción Switch. El valor convertido se imprimirá más tarde.

// Incluye la biblioteca necesaria
#incluir
usando el espacio de nombres STD;
// Declarar el enum
Enum entre semana domingo, lunes, martes, miércoles, jueves, viernes, sábado;
/*
La función convertirá los valores de enum
En el valor de la cadena
*/
void convert_to_string (entre semana WVAL)

cadena de lunes a viernes;
Switch (wval)
Caso Domingo:
día de la semana = "domingo";
romper;
Caso el lunes:
Weekday = "Lunes";
romper;
Caso martes:
Weekday = "Martes";
romper;
Caso miércoles:
día de la semana = "miércoles";
romper;
Caso Jueves:
día de la semana = "jueves";
romper;
Caso Viernes:
Weekday = "viernes";
romper;
Caso del sábado:
Weekday = "Sábado";

cout << "The weekday name is " << weekday << "\n";

int main ()

// Declarar las variables necesarias
Entre semana enumvar;
cadena wval;
int mnum;
// tomar cualquier valor entero del usuario
cout mnum;
// Verifique la entrada
if (mnum> = 0 && mnum <=6)

enumvar = (lunes a viernes) mnum;
convert_to_string (enumvar);

demás
cout << "Invalid number.";
regresar 0;

Producción:

La siguiente salida aparecerá después de ejecutar el código anterior si se toma 3 como valor de entrada:

Ejemplo 3: Establezca los diferentes valores para el enum

Se menciona anteriormente que el valor predeterminado inicial del enum es 0. La forma de declarar enum es definir cada valor por separado y acceder al valor particular, como se muestra en el siguiente ejemplo. Se ha declarado en el código un enum de 5 elementos en el código donde se ha asignado un valor no secuencial para cada elemento. El valor de "azul" se imprimirá más tarde:

// Incluye la biblioteca necesaria
#incluir
usando el espacio de nombres STD;
int main ()
// Declarar el enum
Colores de enum rojo = 10, verde = 30, azul = 20, blanco = 40, negro = 50;
// declarar variable enum con valor
colores enumcol = azul;
// Imprima el valor del enum
cout << "The value of 'Blue' is : " << enumCol << "\n";
regresar 0;

Producción:

La siguiente salida aparecerá después de ejecutar el código anterior:

Ejemplo 4: Cuente el tamaño del enum

La forma de contar el tamaño de un enum se muestra en el siguiente ejemplo. Se ha declarado un enum de 5 elementos en el código. Se ha utilizado una variable contraria para contar el número total de elementos de enum. El bucle "para" se ha utilizado para iterar los valores de Enum desde el principio hasta el final e incrementar el valor de la variable de contador por una en cada iteración.

// Incluye la biblioteca necesaria
#incluir
usando el espacio de nombres STD;
int main ()

// Declarar el enum
Enum Marks CT, Asistencia, Asignación, Mid, Final;
// Inicializar la variable de contador
int contador = 1;
/*
Iterar los valores del enum usando bucle
Para contar el número total de elementos del enum
*/
para (int i = ct; i < Final; i++)

contador ++;

cout << "Total number of elements is: " << counter << "\n";
regresar 0;

Producción:

La siguiente salida aparecerá después de ejecutar el código anterior:

Conclusión:

La enumeración se puede usar para resolver diferentes tipos de problemas de programación en C++. El propósito de usar la enumeración se ha descrito aquí utilizando varios ejemplos. Espero que los nuevos codificadores C ++ puedan comprender el uso de la enumeración y aplicarlo en su código correctamente después de leer este tutorial.