根据上面的枚举建立一个map
时间: 2024-01-24 20:04:52 浏览: 23
好的,以下是将上面的枚举转换为map的示例代码:
```c++
#include <iostream>
#include <map>
#include <string>
enum class Color {
RED,
BLUE,
GREEN,
YELLOW
};
int main() {
std::map<Color, std::string> colorMap;
colorMap[Color::RED] = "red";
colorMap[Color::BLUE] = "blue";
colorMap[Color::GREEN] = "green";
colorMap[Color::YELLOW] = "yellow";
Color c = Color::BLUE;
std::cout << colorMap[c] << std::endl; // 输出 blue
return 0;
}
```
在上面的代码中,我们首先定义了一个名为 `Color` 的枚举类,并在 `main` 函数中建立了一个 `std::map` 类型的 `colorMap` 变量,用于将各种颜色与对应的字符串相互映射。接着,我们分别将 `Color` 枚举类型的四个值与对应的字符串插入到 `colorMap` 中。最后,我们定义了一个 `Color` 类型的变量 `c` 并将其赋值为 `Color::BLUE`,然后通过 `colorMap[c]` 的方式输出 `c` 对应的字符串值,即为 "blue"。