enum
enum ist
ein Aufzählungstyp (Enumerationstyp).
Beispiel:
enum
weekday { Mo, Di, Mi, Do, Fr, Sa, So };
weekday wd = So;
Die
Werte
eines Aufzählungstyps sind der Reihe nach durchnummeriert, beginnend
bei null.
Dann folgen 1,2,3 usw. Man kann diese reihenfolge
verändern durch Zuweisung von Konstanten:
Enum color { rot
= 1, gruen, weiss
= 12,
schwarz, grau };
rot
ist nun
gleich 1, gruen 2, weiss
12, schwarz 13 und grau 14.
Aufzählungstypen
können durch die sogenannte „integrale
Promotion“ automatisch
in eine Ganzzahl umgewandelt werden:
enum
weekday { Mo, Di, Mi, Do, Fr, Sa, So };
weekday wd = So;
int zahl
= wd; // zahl = 6
Umgekehrt
funktioniert dies nicht. Man kann also nicht eine Zahl einem
Aufzählungstyp
zuordnen:
enum
weekday { Mo, Di, Mi, Do, Fr, Sa, So };
weekday wd = 3; // Fehler!