您的位置:首页 > 其它

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

2016-05-08 09:16 344 查看
      枚举看似简单, 但真正能用好的人并不多。 我在很多项目中看到了枚举的一些令人诟病的用法, 有时候, 不正确地使用枚举, 让人心烦意乱, 经常产生一些“值移位”等重大问题, 需要定位较长时间。

      看看教科书般的业余用法:

enum
{
Red,
Black,
Green,
Blue,
White,
};
       这种用法的弊端在于, 当枚举多了后, 不能很快地看出White的值是多少, 那有的人这么搞:

enum
{
Red=0,
Black,
Green=2,
Blue,
White=4,
};
       这种间隔N个进行赋值, 还是不能彻底解决问题, 且怕被人插。 那有的人这么搞:

enum
{
Red,   // 0
Black, // 1
Green, // 2
Blue,  // 3
White, // 4
};
       这么多么垃圾的用法啊, 万一别人在枚举中插入一个值, 那么上面所有的注释都会起误导作用。 还是这么写吧:

enum
{
Red=0,
Black=1,
Green=2,
Blue=3,
White=4,
};
       对枚举进行显式, 这样, 每个值很清晰, 也不怕被人插了。

      

       OK, 虽然简单, 但要注意。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: