枚举值存入vector
时间: 2024-09-20 08:14:06 浏览: 33
springboot validator枚举值校验功能实现
枚举值在C++中通常可以像基本数据类型一样存储在`std::vector`容器中。首先,你需要定义一个枚举类型,然后创建对应的枚举值。例如:
```cpp
enum Color { RED, GREEN, BLUE };
std::vector<Color> colors;
colors.push_back(RED);
colors.push_back(GREEN);
colors.push_back(BLUE);
```
在这个例子中,`colors`是一个包含`Color`枚举类型的向量,通过`push_back`函数将每个枚举值添加到向量中。
如果你想根据枚举值的名称而非枚举常量存储,你可以先获取枚举值对应的整数值,如下所示:
```cpp
int colorInts[] = { static_cast<int>(RED), static_cast<int>(GREEN), static_cast<int>(BLUE) };
colors.assign(colorInts, colorInts + sizeof(colorInts) / sizeof(colorInts[0]));
```
这里我们首先创建了一个整数数组,并将其转换为枚举值,再用`assign`函数一次性设置`colors`向量的所有元素。
阅读全文