枚举的使用

C语言的枚举

typedef enum ENUM_NAME{
    ENUM_VAR1, // 默认是int类型,从0开始
    ENUM_VAR2
}ENUM_NAME;

其他的写法就不列举了。

Objective-C的枚举

在oc中使用枚举可以用NS_ENUM和NS_OPTIONS关键字(确切的讲是对enum的重命名)来定义枚举类型。下面来看看如何使用:

typedef NS_ENUM(NS_OPTIONS) (使用的数据类型,枚举名称) { enumVar,...};

如:

typedef NS_ENUM(NSInteger, ENUMNAME) {
    enumVar1 = 0,
    enumVar2,

};
// 该种枚举和上面并无本质区别,只是在特定场合(带有掩码)使用时更具可读性。
typedef NS_OPTIONS(NSUInteger, MASK) {
    MASKNone   = 0,
    MASKLeft   = 1 

将枚举值转换为字符串

使用如下方法:

+ (NSString *)descriptionOfEnumVar:(MASK)mask 
{
// 定义和枚举相关的数组
static NSString * enumVarDescriptions[] = {
// [下标] = 值
[MASKNone] = @"MASKNone",
[MASKLeft] = @"MASKLeft",
[MASKTop] = @"MASKTop",
[MASKRight] = @"MASKRight",
[MASKBottom] = @"MASKBottom",
};
return enumVarDescriptions[mask];
}

好东西,记录之。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值