Uso de enumeração em C ++

Uso de enumeração em C ++
O tipo de dados definido pelo usuário é declarado usando enumeração que contém um conjunto de constantes. Torna mais fácil ler e gerenciar o código. A palavra -chave enum é usado para definir a enumeração. Um conjunto específico de valores é definido por enumeração. Os valores usados ​​na enumeração são chamados de enumeradores. Os valores da enumeração podem ser analisados ​​facilmente e usados ​​em um trocar declaração. Diferentes usos da enumeração em C ++ foram mostrados neste tutorial.

Sintaxe:

A sintaxe da declaração de enumeração é dada abaixo. O enum A palavra -chave é usada para declarar o tipo de dados de enumeração e os nomes de enum Os valores são separados por uma vírgula (,). Além disso, o valor padrão da enumeração começa de 0.

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

Exemplo 1: Converta o número em valores de enumeração

A maneira de converter qualquer valor numérico em um valor de enumeração é mostrado no exemplo a seguir. Uma enumeração de 12 elementos foi declarada no código. Um valor inteiro será retirado do usuário. Se o valor de entrada estiver dentro de 0 a 11, o valor será convertido no valor da enumeração. Em seguida, a posição do mês será definida com base no valor da enumeração, e a string formatada será impressa mais tarde:

// inclui a biblioteca necessária
#incluir
usando namespace std;
int main ()

// Declare a enumeração
Mês da Enum Jan, fevereiro, março, abril, maio, junho, julho, agosto, setembro, outubro, novembro, dezembro;
// Declare as variáveis ​​necessárias
Mês enumvar;
string mval, pos = "th";
int mnum;
// Pegue qualquer valor inteiro do usuário
cout mnum;
// Verifique a entrada
if (mnum> = 0 && mnum <=11)

// converte o número em enum
enumvar = (mês) mnum;
if (enumvar+1 == 1)
pos = "st";
else if (enumvar+1 == 2)
pos = "nd";
caso contrário, se (enumvar+1 == 3)
pos = "rd";
cout << "The " << enumVar + 1 << pos <<" month of the year." << "\n";

outro
cout << "Invalid number.";
retornar 0;

Saída:

A saída a seguir aparecerá após a execução do código acima se 6 for tomado como o valor de entrada:

Exemplo 2: converta os valores da enumeração na string

No exemplo anterior, o valor da variável enum foi acessado. No entanto, se você deseja imprimir o texto específico para o valor específico da enumeração, precisará usar uma declaração condicional. A maneira de converter o valor da enumeração na string usando uma instrução de caixa de chave é mostrada no exemplo a seguir. O enumeração de 7 elementos foi declarado no código em que os nomes da enumeração são nomes de 7 semanas. Depois de obter uma entrada dentro de 0 a 6, o valor do valor da enumeração correspondente será convertido no nome da semana usando uma instrução Switch. O valor convertido será impresso posteriormente.

// inclui a biblioteca necessária
#incluir
usando namespace std;
// Declare a enumeração
Enum durante a semana domingo, segunda, terça, quarta, quinta -feira, sexta -feira, sábado;
/*
A função converterá os valores da enumeração
no valor da string
*/
void convert_to_string (dia da semana WVAL)

String Weekday;
Switch (WVAL)
Caso domingo:
Semana do dia = "Domingo";
quebrar;
Caso segunda -feira:
Semana) = "Segunda -feira";
quebrar;
Caso terça -feira:
Semana) = "Terça -feira";
quebrar;
Caso quarta -feira:
Semana do dia = "quarta -feira";
quebrar;
Caso quinta -feira:
Semana) = "Quinta -feira";
quebrar;
Caso sexta -feira:
Semana do dia = "sexta -feira";
quebrar;
Caso sábado:
Semana do dia = "Sábado";

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

int main ()

// Declare as variáveis ​​necessárias
Dados da semana Enumvar;
string wval;
int mnum;
// Pegue qualquer valor inteiro do usuário
cout mnum;
// Verifique a entrada
if (mnum> = 0 && mnum <=6)

enumvar = (dias da semana) mnum;
convert_to_string (enumvar);

outro
cout << "Invalid number.";
retornar 0;

Saída:

A saída a seguir aparecerá após a execução do código acima se 3 for tomado como o valor de entrada:

Exemplo 3: defina os diferentes valores para a enumeração

É mencionado anteriormente que o valor padrão inicial da enumeração é 0. A maneira de declarar enum é definir cada valor separadamente e acessar o valor específico, como mostrado no exemplo a seguir. Um enumeração de 5 elementos foi declarado no código em que um valor não sequencial foi atribuído a cada elemento. O valor de "azul" será impresso mais tarde:

// inclui a biblioteca necessária
#incluir
usando namespace std;
int main ()
// Declare a enumeração
Cores da enumeração vermelho = 10, verde = 30, azul = 20, branco = 40, preto = 50;
// Declare enum variável com valor
cores enumcol = azul;
// imprima o valor da enumeração
cout << "The value of 'Blue' is : " << enumCol << "\n";
retornar 0;

Saída:

A saída a seguir aparecerá após a execução do código acima:

Exemplo 4: conte o tamanho da enumeração

A maneira de contar o tamanho de uma enumeração é mostrada no exemplo a seguir. Uma enumeração de 5 elementos foi declarada no código. Uma variável de contador tem sido usada para contar o número total de elementos de enumeração. O loop "for" tem sido usado para iterar os valores da enumeração desde o início até o final e incrementar o valor da variável contra um em cada iteração.

// inclui a biblioteca necessária
#incluir
usando namespace std;
int main ()

// Declare a enumeração
marcas de enum ct, frequência, atribuição, mid, final;
// Inicialize a variável contador
int contador = 1;
/*
Itera os valores da enum usando loop
Para contar o número total de elementos da enumeração
*/
para (int i = ct; i < Final; i++)

contador ++;

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

Saída:

A saída a seguir aparecerá após a execução do código acima:

Conclusão:

A enumeração pode ser usada para resolver diferentes tipos de problemas de programação em c++. O objetivo de usar a enumeração foi descrito aqui usando vários exemplos. Espero que os novos codificadores C ++ possam entender o uso da enumeração e aplicá -lo em seu código corretamente depois de ler este tutorial.