我知道c和c++的标准规定,如果您不指定枚举的第一个元素值,则枚举的初始值将默认为
但是在Linux内核源代码中,我遇到了很多奇怪的声明。例如
这个枚举中明确设置第一个元素为
0
。但是在Linux内核源代码中,我遇到了很多奇怪的声明。例如
numa_faults_stats
:enum numa_faults_stats {
NUMA_MEM = 0,
NUMA_CPU,
NUMA_MEMBUF,
NUMA_CPUBUF
};
这个枚举中明确设置第一个元素为
0
的必要性是什么?
相关文章。
return (0);
或者int x = {0};
。写这种多余的东西几乎总是表明一个不安全的程序员对语言的工作原理并不十分确定。 - undefined