编程的有效方法--用枚举表示选项及状态
2016-08-04 16:07
204 查看
1、好处
在商城项目的开发中,用户购买完成之后,我们常常根据所买商品的类型push到相应的控制器中,而商品类型有很多种,如果使用判断语句,代码就显得臃肿或难以理解,此时,我们就可以使用枚举来表示商品类型,再用switch语句执行相应的操作,这样,代码就简洁很多,更加利于我们的开发;再者,在多选项卡中,用枚举来表示所选项,也更有利于我们的开发;
2、声明
typedef NS_ENUM(NSInteger, OrderType){ OrderTypeLift = 0, OrderTypeGift = 1 << 0, //左移 OrderTypeBusi = 1 << 1, OrderTypeSafeCity = 1 << 2, };
3、在状态中的使用
根据所选择商品的类型执- (void)chooseGiftWithOrderType:(OrderType)type {switch (type) { case OrderTypeBusi: { [self confirmBusi]; } break; case OrderTypeLift: { [self confirmLift]; } break; case OrderTypeGift: { [self confirmGift]; } break; case OrderTypeSafeCity: { [self confirmCity]; } break; } }
4、多选操作
// WKWebView中监听加载进度的新值和旧值 [_wk addObserver:self forKeyPath:@"estimatedProgress" options:NSKeyValueObservingOptionNew | NSKeyValueObservingOptionOld context:nil];
5、注意点
1>应该用枚举来表示状态机的状态、传递给方法的选项以及状态码等值,给这些值起个易懂的名字。2>如果把传递给某个方法的选项表示为枚举类型,而多个选项又可同时使用,那么就将各选项值定义为2的幂,以便通过按位或操作将其组合起来。
3>在处理枚举类型的switch语句中不要实现default分支。这样的话,加入新枚举之后,编译器就会提示开发者:switch语句并未处理所有枚举。
相关文章推荐
- Effective Objective-C 2.0 第5条:用枚举表示状态、选项、状态码
- Effective Objective-C 2.0 — 第五条用枚举表示状态、选项、状态码 (未看完)
- iOS 高级开发技巧 1.熟悉Objective-C (五) 用枚举表示状态、选项、状态码
- 枚举表示状态,选项,状态码
- ios用枚举表示状态,选项,状态码
- 12 个有效的提高编程技能的方法
- 12 个有效的提高编程技能的方法
- 有效的提高编程技能的12个方法
- 12 个有效的提高编程技能的方法 《转》安卓开发者
- 一个提高编程能力的有效方法 -- 阅读其他人的代码
- 12 个有效的提高编程技能的方法
- 12 个有效的提高编程技能的方法
- JAVA多线程编程的几种表示方法
- 有效的提高编程技能的12个方法
- 12 个有效的提高编程技能的方法
- 12 个有效的提高编程技能的方法
- 12 个有效的提高编程技能的方法
- 12 个有效的提高编程技能的方法
- C#编程:枚举(enum)与结构(struct)的定义和使用方法
- 12 个有效的提高编程技能的方法