Ich versuche NSLog einige enums ich habe. Zum Beispiel gibt dieser Codeteil die Integer-Repräsentation der Enumeration aus, aber ich möchte, dass sie den tatsächlichen String-Namen ausgibt, in diesem Fall MON. Wie kann ich das machen?Druck String-Darstellung einer Enum, NSLog
#import <Foundation/Foundation.h>
int main(void)
{
typedef enum {
SUN,
MON,
TUES
} DAYS;
DAYS d = MON;
NSLog(@"%@", d);
return 0;
}
Wie WDUK sagt, kann es wirklich nicht wirklich auf eine vernünftige Weise getan werden. Der Grund ist, dass der Compiler diese Enum-Namen tatsächlich durch Werte ersetzt, sodass sie zur Laufzeit nicht verfügbar sind. Eine Lösung wie WDUKs würde natürlich funktionieren, aber vielleicht sollten Sie ein anderes Modell in Erwägung ziehen, um das zu erreichen, was Sie wollen? –
Wenn diese Antwort Ihren Bedürfnissen entspricht, können Sie das bitte akzeptieren? Vielen Dank – WDUK