Vous êtes sur la page 1sur 5

Wikiversité

Langage C++/Énumérations
< Langage C++

Énumérations
En C++ les énumérations servent à créer des listes de
constantes entières. Cela permet de regrouper des constantes
d'un même contexte dans un même type. Pour des raisons de
clarté il est préférable de définir chaque énumération dans un
fichier d'en-tête propre. Pour des raisons de conception objet il
est nécessaire de typer l'énumération à l'aide du mot clé
"typedef". Enfin pour des raisons d'interférences il est conseillé
de cloisonner l'énumération à un namespace.

Définition
namespace
<NomNamespaceEnum>
{
typedef enum
{
<NomConstante0>
[[= <ValeurConstante0>]
[,
[...]
<NomConstanteN-
1> [= <ValeurConstanteN-
1>]]]
}<NomTypeEnum>;
}

Où <NomNamespaceEnum> est le nom du namespace qui


encapsulera la portée des constantes énumérées,
<NomConstante0> et <NomConstanteN-1> sont les identifiants
des constantes, <ValeurConstante0> et <ValeurConstanteN-1>
sont les valeurs respectivement de <NomConstante0> et
<NomConstanteN-1> et <NomTypeEnum> est le type de
l'énumération.

Il est à noter que les valeurs des constantes sont facultatives.


Sans aucune précision, la valeur d'une constante est la valeur
de la constante précédente augmenté de 1, la première valeur
étant par défaut "0". Il faut aussi savoir qu’il ne peut y avoir
qu'un identifiant pour une valeur donnée.

Exemple

namespace
NECouleursCartes
{
typedef enum
{
Pique,
Coeur,
Trefle,
Carreau
}ECouleursCartes;
}

Exemple

int main(int argc, char* argv[])


{
NECouleursCartes::ECouleursCartes
vMaCouleurCarte;
vMaCouleurCarte =
NECouleursCartes::ECouleursCartes::Coeur;
//ou plus simplement :
vMaCouleurCarte =
NECouleursCartes::Coeur;
return 0;
}

Récupérée de « https://fr.wikiversity.org/w/index.php?
title=Langage_C%2B%2B/Énumérations&oldid=828728 »

Wikiversité

La dernière modification de cette page a été faite le 16 février 2021 à


16:53. •
Le contenu est disponible sous licence CC BY-SA 3.0 sauf mention
contraire.

Vous aimerez peut-être aussi