es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Cómo puedo convertir un enum a string sin utilizar arrays?

¿Cómo convertir el enum de abajo de int a string?

enum class EUserState :uint8
{
    Offline,
    Online,
    Busy,
    Away,
    Snooze,
    LookingToTrade,
    LookingToPlay, 
};
EUserState temp = EUserState::Online;

¿Cómo convertir temp a un string sin usar un array de strings o algo repetitivo?
No quiero que sea complicado.
¿Intentando encontrar un cambio automático?
¿Alguien puede ayudar? 🙂

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Para convertir la enumeración de int a string en C++, puedes usar un statement switch y la función std::to_string(). Aquí tienes un ejemplo:

    “`c++
    #include
    #include

    enum class EUserState : uint8
    {
    Offline,
    Online,
    Busy,
    Away,
    Snooze,
    LookingToTrade,
    LookingToPlay,
    };

    std::string to_string(const EUserState state)
    {
    switch (state)
    {
    case EUserState::Offline:
    return “Offline”;
    case EUserState::Online:
    return “En línea”;
    case EUserState::Busy:
    return “Ocupado”;
    case EUserState::Away:
    return “Ausente”;
    case EUserState::Snooze:
    return “Modo reposo”;
    case EUserState::LookingToTrade:
    return “Buscando intercambiar”;
    case EUserState::LookingToPlay:
    return “Buscando jugar”;
    default:
    return “”;
    }
    }

    int main()
    {
    EUserState temp = EUserState::Online;

    std::string state_string = to_string(temp);
    std::cout << state_string << std::endl;
    
    return 0;
    

    }
    “`

    Este código define una función to_string() que recibe un objeto EUserState y retorna una representación en forma de string del valor de la enumeración. Utiliza un statement switch para emparejar el valor de la enumeración con su representación en forma de string correspondiente. Luego puedes llamar a la función to_string() en cualquier objeto EUserState para obtener su representación en forma de string.

Comments are closed.