你是否恰当地使用了枚举------强烈建议对枚举进行显式赋值

来源:互联网 发布: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
原创粉丝点击