C-SHARP - 3.14 Enum
Cette vidéo introduit la notion d'énumération (mot-clé enum) en C#. Une énumération permet de regrouper plusieurs constantes sous un même nom, afin de rendre le code plus lisible et plus structuré. Sans énumération, pour représenter les jours de la semaine on devrait écrire const int lundi = 1; const int mardi = 2; et ainsi de suite — un code rapidement verbeux et redondant.
Déclarer une énumération
Une enum se déclare en dehors de la méthode Main, mais à l'intérieur de la classe Program. On utilise le mot-clé enum suivi du nom de l'énumération, puis on liste les constantes entre accolades :
enum JoursSemaines
{
Lundi,
Mardi,
Mercredi,
Jeudi,
Vendredi,
Samedi,
Dimanche
}
Par défaut, les constantes sont indexées à partir de 0 et le type sous-jacent est int. Il est possible de préciser un autre type (short, byte, etc.) selon le besoin, mais ce n'est pas obligatoire. L'énumération évite donc de devoir taper const int et d'initialiser chaque constante à la main — tout est automatique.
Personnaliser les valeurs
Pour démarrer à 1 plutôt qu'à 0, il suffit d'écrire Lundi = 1 sur la première constante ; les suivantes s'incrémenteront automatiquement. On peut aussi assigner la même valeur à plusieurs constantes — utile, par exemple, pour classer plusieurs erreurs à un même niveau de gravité.
Utiliser l'énumération
Dans Main, on déclare une variable du type de l'énumération et on lui affecte une constante via la notation JoursSemaines.Lundi :
JoursSemaines jour = JoursSemaines.Lundi;
Console.WriteLine(jour); // affiche "Lundi"
Console.WriteLine((int)jour); // affiche la valeur numerique associee
Le simple Console.WriteLine(jour) affiche le nom de la constante. Pour récupérer la valeur numérique associée, on effectue un cast en int avec (int)jour : si la variable vaut Samedi, on obtient 6. La prochaine vidéo proposera un petit exercice pour pratiquer cette notion d'énumération.
En résumé
Ce cours introduit les énumérations en C#, un type de données permettant de regrouper plusieurs constantes connexes pour faciliter la lecture et la maintenance du code. Le contenu démontre comment déclarer une énumération (exemple avec les jours de la semaine), explique que les valeurs commencent par défaut à 0 et sont de type int (customisable), et montre comment créer des variables d'énumération et récupérer leurs valeurs numériques.
Points clés
- Les énumérations permettent de regrouper plusieurs constantes connexes pour améliorer la lisibilité du code
- Syntaxe de déclaration: enum NomEnumeration { constante1, constante2, ... }
- Par défaut, les énumérations commencent à 0 et sont de type int (customisable avec short, etc.)
- Il est possible d'initialiser manuellement les valeurs (ex: Lundi = 1) et les suivantes s'incrémentent automatiquement
- Plusieurs constantes peuvent avoir la même valeur (utile pour classer des erreurs par niveau de gravité)
- Pour récupérer la valeur numérique d'une constante, utiliser le cast (int) avant la variable
Questions fréquentes
À quoi servent les énumérations en C#?
Les énumérations permettent de regrouper plusieurs constantes connexes (comme les jours de la semaine) pour rendre le code plus lisible et éviter de créer de nombreuses variables constantes isolées.
Quel est le type par défaut d'une énumération et comment le modifier?
Le type par défaut est int, mais il est possible de le spécifier autrement (short, etc.) en indiquant le type désiré après le nom de l'énumération, selon les besoins du programme.
Comment récupérer la valeur numérique d'une constante d'énumération?
En utilisant le cast (int) avant la variable, par exemple Console.WriteLine((int)jour) retournera la valeur numérique correspondante (0 pour lundi, 1 pour mardi, etc.).