Enum é um tipo de dados que pode ser especificado pelo usuário que contém constantes integrais. Para defini -lo, utilizamos o modificador 'Enum'. Neste artigo, veremos como transferir determinados valores do tipo enum para uma string em c++. A conversão de uma enumeração em uma string pode ser alcançada de várias maneiras. Vamos passar por alguns dos métodos mais eficientes e simples para converter uma enumeração em uma string. Este método representa uma coleção de números inteiros de uma maneira menos propensa a erros e mais legíveis.
Exemplo 1: Uso do método stringify () para converter enum para string em c ++:
O método de macro stringify () é usado para converter uma enumeração em uma string. Dereferência variável e substituições de macro não são necessárias com este método. O importante é que apenas o texto incluído entre parênteses pode ser convertido usando o método stringify ().
Vamos demonstrar a implementação do código. Na primeira etapa, importamos dois arquivos padrão na seção de cabeçalho. O primeiro é o arquivo iostream e o segundo é o arquivo definido stringify que passa um argumento nele. Este arquivo converte argumentos macro em literais de string sem estender o nome do parâmetro. O arquivo de namespace std também está incluído para a utilização de suas funções.
Em seguida, definimos uma classe enum como um "universo" e contém quatro valores diferentes do tipo enum. Aqui, temos o primeiro valor de enumeração na posição 0, o segundo valor da enumeração na posição 1, e assim por diante, por padrão. Agora, temos uma classe de tipo de dados de caracteres como "convert_enum []", onde chamamos o Método Stringify. O método stringify pega valores do tipo enum e os converte em uma string.
Criamos uma função como "DisplayItems", que imprimirá os valores armazenados na classe Enum. No final, invocamos a principal função que está chamando a função de "DisplayItems" e assumindo a classe Enum "Universo" como um argumento. O valor do tipo enum será convertido em uma string usando este método.
#incluirOs itens que contêm a classe Enum são mostrados na imagem a seguir e são convertidos na string:
Exemplo2: Uso da matriz constante char* para converter enum em string em c ++:
Usando o const char* a matriz é um dos métodos mais básicos para converter uma enumeração. Para acessar os elementos da matriz de string, utilizaremos os valores padrão de enum neste método.
Inicialmente, temos arquivos de cabeçalho padrão na seção de cabeçalho do programa a seguir. Temos um arquivo de namespace std também para acessar sua função. Em seguida, definimos uma classe Enum usando a palavra -chave Enum junto com o nome da classe. O nome da classe é representado como "tipos de dados". O enum da classe “Tipos de dados” contém os quatro elementos.
Depois disso, temos uma matriz de ponteiro const Char como "enumstr" que contém os valores da string de um tipo de enumeração. Assim, “Enumstr []” é uma matriz de string que não pode ser modificada. Em seguida, temos a função principal e, na função principal, temos um comando cout que leva os valores da matriz de string “Enumstr” e imprimiremos na tela Prompt.
#incluirO resultado que obtemos usando a matriz de const Char Pointer no programa acima é mostrado abaixo:
Exemplo 3: Usando a função definida para converter enum para string em c ++:
Também podemos implementar nossa função que aceita um número inteiro da classe Enum como um argumento e retorna uma string como uma saída.
O programa incluiu a biblioteca C ++ necessária no cabeçalho junto com o arquivo de namespace std. Depois disso, criamos uma enumeração com o modificador "enum". A enumeração é definida com o nome "animal". O "animal" armazena cinco valores aleatórios de um tipo de enumeração. Temos uma matriz de ponteiro const Char como "string enum" na próxima linha de código. Ele contém uma variedade de valores de string.
Em seguida, definimos uma função personalizada como "Converttoenum". Esta função está tomando números inteiros como um argumento como "val". A variável da string é preenchida dentro da função com um item const char* da matriz de string enum. No final, definimos a principal função na qual chamamos de função personalizada de "converttoenum" e passamos os valores da enumeração para essa função personalizada.
#incluirA matriz de string gerada a partir do tipo enum é o resultado da execução do código acima mostrada na imagem a seguir.
Conclusão
Exploramos muitas abordagens para converter uma enumeração em uma string. O primeiro método que é o método stringify () também pode lidar com enumes grandes, enquanto os outros métodos podem ser usados para conversões fáceis. Essas são abordagens bastante simples e, com apenas uma tentativa, você se sentirá confortável com eles.