enum Values to NSString (iOS)

前端 未结 16 1919
悲&欢浪女
悲&欢浪女 2020-12-04 07:57

I have an enum holding several values:

enum {value1, value2, value3} myValue;

In a certain point in my app, I wish to check which value of

16条回答
  •  情歌与酒
    2020-12-04 08:13

    Here is working code https://github.com/ndpiparava/ObjcEnumString

    //1st Approach
    #define enumString(arg) (@""#arg)
    
    //2nd Approach
    
    +(NSString *)secondApproach_convertEnumToString:(StudentProgressReport)status {
    
        char *str = calloc(sizeof(kgood)+1, sizeof(char));
        int  goodsASInteger = NSSwapInt((unsigned int)kgood);
        memcpy(str, (const void*)&goodsASInteger, sizeof(goodsASInteger));
        NSLog(@"%s", str);
        NSString *enumString = [NSString stringWithUTF8String:str];
        free(str);
    
        return enumString;
    }
    
    //Third Approcah to enum to string
    NSString *const kNitin = @"Nitin";
    NSString *const kSara = @"Sara";
    
    
    typedef NS_ENUM(NSUInteger, Name) {
        NameNitin,
        NameSara,
    };
    
    + (NSString *)thirdApproach_convertEnumToString :(Name)weekday {
    
        __strong NSString **pointer = (NSString **)&kNitin;
        pointer +=weekday;
        return *pointer;
    }
    

提交回复
热议问题