04 February 2023

C++ 核心指南目录

“Avoid unnamed enumerations”

理由

如果你无法给一个枚举命名,那么说明枚举值是不相关的。

坏例子

enum { red = 0xFF0000, scale = 4, is_signed = 1 };

以往代码中,这种错误比较场景。可以用 constexpr 改进:

constexpr int red = 0xFF0000;
constexpr short scale = 4;
constexpr bool is_signed = true;

强化

  • 标记未命名的枚举