(五) [OC高效系列]用枚举表示状态、选项、状态码

2016-08-10  本文已影响104人  修行猿

1.NS_ENUM NS_OPTIONS

2.一次只能赋一个值的枚举变量

定义

typedef NS_ENUM(NSUInteger, State) {
    StateConnected,
    StateConnecting,
    StateFailed
};

使用方式:swtich一定要把所有的情况覆盖,而不要用default,否则以后一旦增加状态,不会有提示。

 State state = StateConnected;
   
    switch (state) {
        case StateConnected:
            
            break;
        case StateFailed:
            
            break;
        case StateConnecting:
            
            break;
    }

3.可以同时赋值多个值的枚举类型

定义

typedef NS_OPTIONS(NSUInteger, Direction) {
    DirectionUp = 1 << 0,
    DirectionDown = 1 << 1,
    DirectionLeft = 1 << 2,
    DirectionRight
};

使用

 Direction direct = DirectionUp | DirectionLeft;
    if(direct & DirectionUp){
        //执行上方向的相应代码
    }
    if(direct & DirectionDown){
        //执行下方向的相应代码
    }
上一篇下一篇

猜你喜欢

热点阅读