强枚举
// C++11 强类型枚举,可以指定底层数据类型来节省内存(比如 uint8_t 只占 1 字节)
enum class SystemState : uint8_t {
Idle,
Running,
Error
};
SystemState currentState = SystemState::Idle;
// 必须显式写出 SystemState::Running,杜绝了命名冲突和隐式的整数转换
if (currentState == SystemState::Running) {
// ...
}