enum Dag
{
Zondag,
Maandag,
Dinsdag,
Woensdag,
Donderdag,
Vrijdag,
Zaterdag
}
De volgende code is dan mogelijk:
Dag d;
d = Dag.Woensdag;
Een ander voorbeeld is de maanden van het jaar: Januari tot en met…
Dat wordt duidelijk aan de hand van het volgende voorbeeld: Een kalender applicatie waarbij je een item aan een weekdag kunt aanroepen. Initieel:
void VoegToeAanKalender(int dag, string item)
De dagen in de week zijn als constanten aangemaakt. Zondag is 0, Maandag is 1, etc. Hetzelfde voor de maanden in het jaar: Januari is 0, Februari is 1, etc.
Als je nu een programmeerfout maak:
VoegToeAanKalender(Februari, “hele maand spectaculaire aanbiedingen”);
Dan wordt hier braaf het item toegevoegd op maandag… Oops.
Met enums houdt de compiler je tegen, dan wordt het immers:
void VoegToeAanKalender(Dag dag, string item)
aangezien Maand geen Dag is.