我们看看下面这段代码:
#include <iostream>
#include <iostream>
using namespace std;
typedef enum
{
E1 = -100,
E2,
E3,
E4,
}ErrorType;
int main()
{
return 0;
}
这段代码有两个非常不好的地方:
1. 如果之后的程序员在E2和E3中间插入一种类型, 那么后面的错误码都错了。 别跟我说这种事不会发生。
2. 如果程序除了问题, 比如说报了-98的错误码, 那么在代码工程中搜不到-98这样的字符。 这种事太常见了, 客户、用户经常反馈。
我算是受过以上两个苦的, 所以大力建议在用enum定义错误码时, 最好显式赋值, 如下:
#include <iostream>
using namespace std;
typedef enum
{
E1 = -100,
E2 = -99,
E3 = -98,
E4 = -97,
}ErrorType;
int main()
{
return 0;
}
代码习惯无小事, 务必注意。 也欢迎大家提出不同角度的看法。