在这里,我们将看到如何在C ++中将一些枚举类型数据映射到字符串。没有这样做的直接功能。但是我们可以创建自己的函数以将枚举转换为字符串。
我们将创建一个以枚举值作为参数的函数,然后从该函数手动以字符串形式返回枚举名称。
#include <iostream> using namespace std; enum Animal {Tiger, Elephant, Bat, Dog, Cat, Mouse}; string enum_to_string(Animal type) { switch(type) { case Tiger: return "Tiger"; case Elephant: return "Elephant"; case Bat: return "Bat"; case Dog: return "Dog"; case Cat: return "Cat"; case Mouse: return "Mouse"; default: return "无效的动物"; } } int main() { cout << "动物是: " << enum_to_string(Dog) << " Its number: " << Dog <<endl; cout << "动物是: " << enum_to_string(Mouse) << " Its number: " << Mouse << endl; cout << "动物是: " << enum_to_string(Elephant) << " Its number: " << Elephant; }
输出结果
动物是: Dog Its number: 3 动物是: Mouse Its number: 5 动物是: Elephant Its number: 1