作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我知道c和 c++标准规定,如果您不指定第一个元素的值,枚举的起始值将默认为 0
。
但是例如在 Linux 内核源代码中,我遇到了数十次奇怪的声明。例如numa_faults_stats
:
enum numa_faults_stats {
NUMA_MEM = 0,
NUMA_CPU,
NUMA_MEMBUF,
NUMA_CPUBUF
};
将此枚举的第一个元素显式设置为 0
有何必要?
最佳答案
C 和 C++ 中的各种事物有很多规则:这就是其中之一。有时为了清楚起见,明确表达是件好事。
另一种常见的方法是在函数原型(prototype)中使用变量名(只需要类型)。还有一个是 return 0;
in main
两种语言中的一种。在 C++ class
或 struct
中显式使用 public
和 private
是另一回事。
关于c++ - 在 0 显式启动 C/C++ 枚举的原因,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63344535/
我是一名优秀的程序员,十分优秀!