1Danke
ERLEDIGT
NEIN
NEIN
ANTWORTEN
1
1
ZUGRIFFE
1537
1537
EMPFEHLEN
-
Hallo,
ich habe ein enum, bspw.
enum X
{
constant1 = 1,
constant2 = 2,
...
}
Meine Anwendung schreibt ein trace file mit infos. Gibt es eine einfache Möglichkeit die
Namen statt der Werte auszugeben?
Bspw sollte im Trace "constant1" stehen statt "1", wenn ich constant1 in den output stream schreibe. Einen Helper, der intern ein mapping auf strings macht, finde ich nicht gut, weil man ihn jedesmal wieder anpssen muss (class outputEnum { ...if(value==1) return "constant1"; if(value==2) return "constant2),...}
Gruß,
Peter
-
23.11.09 12:44 #2
- Registriert seit
- Jun 2005
- Beiträge
- 8.168
Hi.Nein, gibt es nicht. Nach der Kompilierung sind die ganzen Namen nur noch Schall und Rauch. Du könntest eine Lookuptabelle verwenden, ala
GrußCode cpp:1 2 3 4 5 6 7 8 9 10
#define SYMBOL2NAME(e) { e, # e } struct { X value; const char* name; } tab_x2name[] = { SYMBOL2NAME(constant1), SYMBOL2NAME(constant2), ... };
If at first you don't succeed, try again. Then quit. No use being a damn fool about it.
Ähnliche Themen
-
ENUM mit SWITCH "Jahreszeiten"
Von Marsik im Forum Java GrundlagenAntworten: 5Letzter Beitrag: 26.01.09, 16:07 -
"static" Schlüsselwort bei einem Enum innerhalb einer Klasse?
Von DarthShader im Forum JavaAntworten: 4Letzter Beitrag: 07.03.08, 12:51 -
Eclipse und "org.apache.axis.enum"
Von exitium im Forum JavaAntworten: 2Letzter Beitrag: 12.09.07, 09:56 -
Anfängerproblem: "enum" und switch
Von Gismo im Forum JavaAntworten: 2Letzter Beitrag: 23.01.05, 14:36 -
Vorsicht beim "Enum-Pattern"!
Von Thomas Darimont im Forum JavaAntworten: 0Letzter Beitrag: 21.12.04, 11:57





Zitieren

Login






