Programmieren - alles kontrollieren 4.934 Themen, 20.613 Beiträge

Mehrere Aufzählungstypen

Sovebämse / 6 Antworten / Flachansicht Nickles

Ich bin gerade dabei mir C++ anzueignen. Ich lese das Buch C++ in 21 Tagen.

Dort werden Aufzählungstypen kurz angesprochen. Es geht ja darum, dass man eigene Typen erstellen kann, womit dann Variablen definiert werden können.
Als Beispiel werden die Wochentage aufgeführt. Unter anderem kann man dann die Wochentage als Wort z.B. in if-Bedingungen verwenden. So kann ich also die Zahl 1 eingeben, welche dann z.B. dem Dienstag entspricht. Mit if (x = Dienstag) kann dann die Eingabe verglichen werden.

Nun meine Frage: Ich seh den Sinn darin nicht so ganz. Wenn ich nämlich mehrere verschiedene Aufzählungstypen erstelle, werden die jeweiligen Werte ja wieder ab 0 nummeriert.

Bsp.: Ich definiere den Typ Wochentag und den Typ Monat. Mache ich nun eine Abfrage und tippe die Zahl 0 ein, dann kann damit ja der Januar oder auch der Montag gemeint sein. Ein if-Vergleich würde dann bei beiden Möglichkeiten zutreffen, wäre somit also sinnlos.

Kann mir da jemand helfen, ob ich ev. einen Denkfehler mache bzw. ob man diese Aufzählungstypen einfach nicht so benutzt? Trotzdem bleibt mir schleierhaft, was ich dann mit den integer-Werten anfangen kann, wenn sie sich nicht mehr eindeutig zuordnen lassen.

Gruss und Dank
Thomas

bei Antwort benachrichtigen
Sovebämse mi~we „Der Sinn dieser Aufzählungstypen ist ja gerade, daß du eben nicht mit den...“
Optionen

Na, dann ist es nur ein wenig fraglich, warum im Buch genau ein solches Beispiel gezeigt wird, wo der Benutzer eine Zahl eingeben muss für einen Tag und dann ein if-Vergleich kommt.

Dass der Sinn ist, dass Integer-Zahlen bzw. deren Gebrauch dadurch leicht verständlich wird, ist mir klar. Aber dafür gibt's ja auch die Möglichkeit mit const eine Konstante mit klarem Namen zuzuweisen?

Vielleicht muss ich auch einfach zuerst weiter in C++ eindringen, damit mir das alles klarer wird. Ich bin unglaublich schwach in diesen Dingen, ich bin schnell überfordert, wenns ums logische Denken geht. Ich stell mich da echt doof an, obwohl ich immerhin Grundschullehrer bin ;-)

bei Antwort benachrichtigen