在 C 中,枚举是一种用户定义的数据类型,可以为其成员分配一些整数值。在本文中,我们将讨论如何在 C++ 中将枚举转换为字符串。
例子:
Input: myColor = GREEN; Output: Green
在 C++ 中将枚举转换为字符串
有多种方法 转换一个枚举到一个字符串。将枚举转换为枚举的典型做法string正在创建枚举值与其字符串表示形式之间的映射。
方法
- 定义一个表示相关常量集合的枚举,并为每个常量分配一个有意义的名称。
- 采用Map在枚举值与其相应的字符串表示形式之间创建连接。
- 通过填充映射数据结构,在每个枚举值与其对应的字符串之间建立清晰的关联。
- 开发一个函数,该函数将枚举值作为输入,并通过引用已建立的映射返回其关联的字符串。
- 根据枚举参数从函数返回相应的字符串。
将枚举转换为字符串的 C++ 程序
C++
// C++ Program to Convert an Enum to a String
#include <iostream>
#include <map>
using namespace std;
// Define an enumeration named Color with constants RED,
// GREEN, and BLUE
enum Color { RED, GREEN, BLUE };
// Create a mapping from Color enum values to corresponding
// strings
map<Color, string> colorToString = { { RED, "Red" },
{ GREEN, "Green" },
{ BLUE, "Blue" } };
// Function to convert a Color enum value to its string
// representation
string enumToString(Color color)
{
return colorToString[color];
}
// Driver Code
int main()
{
// Declare a variable 'myColor' and assign it the value
// GREEN
Color myColor = GREEN;
// Display the string representation of the enum using
// the conversion function
cout << "Color: " << enumToString(myColor) << endl;
return 0;
}
输出
Color: Green
时间复杂度:O(1)
空间复杂度:O(N),N 是枚举中的项目数。
相关用法
- C++ cos()用法及代码示例
- C++ sin()用法及代码示例
- C++ asin()用法及代码示例
- C++ atan()用法及代码示例
- C++ atan2()用法及代码示例
- C++ acos()用法及代码示例
- C++ tan()用法及代码示例
- C++ sinh()用法及代码示例
- C++ ceil()用法及代码示例
- C++ tanh()用法及代码示例
- C++ fmod()用法及代码示例
- C++ acosh()用法及代码示例
- C++ asinh()用法及代码示例
- C++ floor()用法及代码示例
- C++ atanh()用法及代码示例
- C++ log()用法及代码示例
- C++ trunc()用法及代码示例
- C++ round()用法及代码示例
- C++ lround()用法及代码示例
- C++ llround()用法及代码示例
- C++ rint()用法及代码示例
- C++ lrint()用法及代码示例
- C++ log10()用法及代码示例
- C++ modf()用法及代码示例
- C++ exp()用法及代码示例
注:本文由纯净天空筛选整理自rajpootveerendrasingh36大神的英文原创作品 How to Convert an Enum to a String in C++?。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。