c++ qt 无法从int转为enum
时间: 2023-12-02 07:04:04 浏览: 91
C++中枚举类型(enum)
在 C++ 中,将整数转换为枚举类型需要使用强制类型转换。例如:
```c++
enum Color { RED, GREEN, BLUE };
int colorCode = 2;
Color color = static_cast<Color>(colorCode);
```
在这个例子中,我们定义了一个 `Color` 枚举类型,并将整数变量 `colorCode` 初始化为 2。然后,我们使用 `static_cast` 将 `colorCode` 转换为 `Color` 类型,并将结果存储在 `color` 变量中。
请注意,如果整数值不在枚举类型中定义的范围内,则会引发 undefined behavior。因此,确保在进行转换之前检查整数值是否有效。
阅读全文