Hallo zusammen,
ich hätte eine Frage zu Enumerationen in C++, hier ein Codeausschnitt:
1 | enum class Month{
|
2 | jan=1, feb, mar, apr, mai, jun, jul, aug, sep, oct, nov, dec
|
3 | };
|
4 |
|
5 | Month m = Month(7);
|
6 | Month mm = Month{7}; // Warum geht das nicht?
|
Die letzte Zeile (mit den geschweiften Klammern) funktioniert nicht, in
der Literatur habe ich folgenden Satz gelesen warum es nicht
funktionieren soll:
"Note that you cannot use Month{7} notation because that would allow
only values that could be used in an initialization of a "Month", and
ints cannot."
Leider verstehe ich das nicht, kann mir das jemand einfacher erklären?
Indem ich jan=1 schreibe, dann weise ich dem jan doch einen int von 1
zu.