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:

Kommentare lesen (1 Beitrag)