Comment utiliser les énumérations en C++

Supposons que nous avons un enum comme suit:

enum Days {Saturday, Sunday, Tuesday,Wednesday, Thursday, Friday};

Je veux créer une instance de cette enum et de l'initialiser avec une valeur correcte, donc je ne l':

Days day = Days.Saturday;

Maintenant, je veux vérifier ma variable d'instance ou un enum valeur, donc je ne l':

if (day == Days.Saturday)
{
    std::cout<<"Ok its Saturday";
}

Qui me donne une erreur de compilation:

erreur: attendu primary-expression before ‘.’ token

Donc, pour être clair, quelle est la différence entre dire:

if (day == Days.Saturday)         //Causes compilation error

et

if (day == Saturday)

?

Ce que font ces deux en réalité, l'un est OK et on provoque une erreur de compilation?

  • Il n'est pas difficile de Google ", l'utilisation des enums en C++" pour trouver la syntaxe correcte. Il est intéressant de noter que le C++11 a portée énumérations, ainsi que la possibilité de spécifier le type sous-jacent.
  • je sais, je veux savoir pourquoi sa me donne l'erreur!
  • Ses mercredi ici. Vous avez beaucoup trop d'erreurs de syntaxe pour le compilateur C++. À partir de 'Enum'.
  • Parce que les énumérations ne sont pas les mêmes de la syntaxe et de la sémantique) dans les deux langues. La première chose que je fais après avoir obtenu une erreur lorsque vous tentez d'utiliser une fonction dans une nouvelle langue est de regarder la syntaxe (ou si c'est possible) dans cette langue.
  • savez , je fais exactement la même chose.heureusement, j'ai eu ma réponse.J'ai aussi mis à jour la question pour être plus claire.Je vous remercie par route;)
  • "autant que je sache, les énumérations de déclaration et d'utilisation dans ces deux langues sont les mêmes.". Il est votre problème, là. C# est pas le langage C++. En particulier, ils ont une syntaxe différente pour les énumérations.
  • si tout le monde serait d'utiliser google ou un autre sens à la salve de leurs problèmes, il n'y aurait pas de StackOverflow.
  • ici, sur un débordement de pile, il est d'AUTANT plus apprécié lorsque vous postez une VRAIE réponse à la question que la moyenne (et bon marché) commentaire.

InformationsquelleAutor Breeze | 2012-08-29