Chciałbym uzyskać nazwy i wartości z typu enum
w D2. Wiem, że mogę uzyskać wartości enum przy użyciu std.traits, ale co z nazwami?Czy można uzyskać nazwy i wartości członków enum w D?
Dane:
enum lst
{
apple,
bottle,
orange,
blue
}
Chciałbym dostać tablicę asocjacyjną podobnego.
string lstmap[int] = [1:"apple", 2:"bottle", 3:"orange", 4:"blue"].
Odpowiedź brzmi: tak. Rozwiązaniem, jak ktoś pokazał mi to:
foreach (i, member; __traits(allMembers, lst)) {
lstmap[cast(int) __traits(getMember, lst, member)] = member;
}
Czy możesz przesłać odpowiedź samodzielnie i oznaczyć ją jako zaakceptowaną, aby pytanie nie było już wyświetlane jako bez odpowiedzi? – klickverbot