你是否恰当地使用了枚举------强烈建议对枚举进行显式赋值
来源:互联网 发布:startos安装软件 编辑:程序博客网 时间:2024/05/24 23:16
枚举看似简单, 但真正能用好的人并不多。 我在很多项目中看到了枚举的一些令人诟病的用法, 有时候, 不正确地使用枚举, 让人心烦意乱, 经常产生一些“值移位”等重大问题, 需要定位较长时间。
看看教科书般的业余用法:
enum{Red,Black,Green,Blue,White,};这种用法的弊端在于, 当枚举多了后, 不能很快地看出White的值是多少, 那有的人这么搞:
enum{Red=0,Black,Green=2,Blue,White=4,};这种间隔N个进行赋值, 还是不能彻底解决问题, 且怕被人插。 那有的人这么搞:
enum{Red, // 0Black, // 1Green, // 2Blue, // 3White, // 4};这么多么垃圾的用法啊, 万一别人在枚举中插入一个值, 那么上面所有的注释都会起误导作用。 还是这么写吧:
enum{Red=0,Black=1,Green=2,Blue=3,White=4,};对枚举进行显式, 这样, 每个值很清晰, 也不怕被人插了。
OK, 虽然简单, 但要注意。
0 0
- 你是否恰当地使用了枚举------强烈建议对枚举进行显式赋值
- 如何恰当地进行网站改版?
- 如何恰当地使用 React 生命周期方法
- 枚举enum 赋值 int
- Android是否推荐使用枚举(enum)?使用枚举的利弊以及枚举倒底占多少内存?
- 使用foreach语句对类似于集合的类中的成员进行枚举
- 你安装的app应用是否对你的隐私进行了保护
- java对枚举的类反射使用
- 你真的会使用枚举么
- 优雅编程之这样使用枚举和注解,你就“正常”了(二十九)
- 枚举使用
- 枚举使用
- 枚举使用
- 枚举使用
- 枚举使用
- 枚举使用
- switch-case可以对枚举类型进行流转判断
- ATL中对DOM中的元素进行枚举的例子
- Linux多线程编程
- My first article
- 《java入门第一季》之面向对象(修饰符的概念和总结)
- Spark中的二次排序
- Linux C++学习之路
- 你是否恰当地使用了枚举------强烈建议对枚举进行显式赋值
- C++ explicit关键字
- linux下C++开发工具
- 并查集初学(2)LA 3644 & LA3027
- Android之十一实现登陆页面分析
- Linux下常用的C/C++开源Socket库
- map同步数据库/后台缓存
- Android5.1系统WebView内存泄漏场景
- Hash Compared & ELFHash 详解