iX 8/2020
S. 118
Praxis
C++-Tricks

Bibliothek Magic Enum: Enums einfacher nutzen

Magie statt Handarbeit

Detlef Wilkening

Enumerationen sind ein praktisches Sprachmittel, auch wenn der C++-Sprachstandard noch nicht alle ihre Funktionen zur Verfügung stellt. Diese Lücke füllt die Bibliothek Magic Enum.

Benötigt ein Entwickler in seinem Sourcecode dedizierte Werte, um zum Beispiel die Status eines Objekts oder die Eigenschaften eines Elements abzubilden, dann findet man leider immer wieder eine Auflistung von Integer-Konstanten:

// Pseudocode
constant integer Visible = 1
constant integer Enable = 2
constant integer Left = 1
constant integer Center = 2

Dies ist kein guter Programmierstil, denn die Konstanten interferieren mit den normalen Integer-Werten und Funktionen. Viele Codefehler findet der Compiler dann nicht, wie eine mit einem beliebigen Integer aufgerufene Funktion, die einen Status erwartet:

Alle heise-Magazine mit heise+ lesen

3,99 € / Woche

Ein Abo, alle Magazine: c't, iX, Mac & i, Make & c't Fotografie

  • Alle heise-Magazine im Browser und als PDF
  • Alle exklusiven heise+ Artikel frei zugänglich
  • heise online mit weniger Werbung lesen
  • Vorteilspreis für Magazin-Abonnenten
Jetzt unbegrenzt weiterlesen Vierwöchentliche Abrechnung.

Alle Ausgaben freischalten

2,60 € 1,49 € / Woche

Nach Testphase 2,60 € wtl.

  • Zugriff auf alle iX-Magazine
  • PDF-Ausgaben zum Herunterladen
  • Zugriff in der iX-App für unterwegs
  • Über 35% günstiger im Testzeitraum
Jetzt testen Nach Testphase jederzeit monatlich kündbar.

Ausgabe einmalig freischalten

8,90 € / Ausgabe

Diese Ausgabe lesen – ohne Abobindung

  • Sicher einkaufen im heise shop
  • Magazin direkt im Browser lesen
  • Dauerhaft als PDF behalten

Kommentare lesen (1 Beitrag)