So implementieren Sie eine echte Enum-Klasse in C ++

8

Ich versuche ein enum class zu implementieren, das sich wie das mit C ++ 11 (mit Typsicherheit usw.) eingeführte verhält, aber das verhält sich auch wie eine echte Klasse (mit Konstruktor, Methode , etc.). Um dies zu tun, habe ich das interne enum anonym gehalten: Dies hatte den Nebeneffekt, dass ich eine m_value -Membervariable namens private hinzufügen musste, um static als _ -Membervariable zu behalten. , wie Sie unten sehen können:

%Vor%

Gibt es eine Möglichkeit, die überflüssige static -Membervariable _ loszuwerden? Ich möchte das interne enum anonymisieren und irgendwie seinen Typ holen, wenn erforderlich (= nur privat).

    
nyarlathotep108 01.09.2017, 17:39
quelle

1 Antwort

13

Wie wäre es mit einem der enum-Werte? z.B.:

%Vor%

[Live-Demo]

    
W.F. 01.09.2017, 17:58
quelle

Tags und Links