Un problème en c++

zematex Messages postés 116 Statut Membre -  
zematex Messages postés 116 Statut Membre -
Bonjour,
Alors je vous montre pour commencer mon code :
#include "stdafx.h"
 #include <iostream>
 using namespace std;
 int main()
 {
enum class choixdumenu 
 {
jouer = 'j',
 quitter = 'q',
 incorrect 
 };
 auto choix(static_cast<char>(choixdumenu::jouer));
 int saisiechoix;
 cin >> saisiechoix;
 if (saisiechoix == static_cast<char>(choixdumenu::jouer)|| saisiechoix == static_cast<char>(choixdumenu::quitter))
 {
  choix = static_cast<choixdumenu>(saisiechoix);
 }
 else
 {
 choix = choixdumenu::incorrect;
}
 
switch (choix)
{
case static_cast<char>(choixdumenu::jouer): 
cout << "ok lol c'est jouer" << endl;
 break;
case static_cast<char>(choixdumenu::quitter):
 cout << " ok lol c'est quitter" << endl;
 break;
default:
cout << "ok lol c'est default " << endl;
break;
 }
system("pause");
return 0;
}

Alors j'ai un problème à la ligne 17 et 21 et éxactement au égal quand je met ma sourie deçus (pour afficher le problème) ça me met ça : impossible d'assigner une valeur de type"choixdumenu" dans une entitée de type "char".
Donc voila si vous avez la réponse et un peu de temps je vous remerci :).

EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici : ICI

Merci d'y penser dans tes prochains messages.

1 réponse

  1. Utilisateur anonyme
     
    Bonjour,

    comme ceci peut-être :

    #include <iostream>
    
    using namespace std;
    
    int main() {
    
        enum class Choixdumenu {
            jouer = 'j',
            quitter = 'q',
            incorrect,
        };
    
        Choixdumenu choix;
        char saisiechoix;
    
        cin >> saisiechoix;
    
        if (saisiechoix == static_cast<char>(Choixdumenu::jouer) || saisiechoix == static_cast<char>(Choixdumenu::quitter)) {
            choix = static_cast<Choixdumenu >(saisiechoix);
        } else {
            choix = Choixdumenu::incorrect;
        }
    
        switch (choix) {
            case Choixdumenu::jouer:
                cout << "ok lol c'est jouer" << endl;
                break;
            case Choixdumenu::quitter:
                cout << " ok lol c'est quitter" << endl;
                break;
            default:
                cout << "ok lol c'est default " << endl;
                break;
        }
       // system("pause");
        return 0;
    }
    
    0
    1. zematex Messages postés 116 Statut Membre
       
      ok merci je n'ai plus d'erreur mais à la ligne 13 je comprend pas pourquoi et comment tu à créé "choix",

      ZEMATEX
      0
    2. zematex Messages postés 116 Statut Membre
       
      Enfaite mon code marche mais je ne comprend pas aussi pourquoi j'ai eut ces deux erreurs (les egales).
      0