This question already has answers here:
C++: Print out enum value as text

(14个回答)


6年前关闭。




我有一个C++ Testing.hh头文件,在其中声明了这个ENUM-
enum TestTypeOpt {TestingOne, TestingTwo};

现在在我的Testing.cc类中,我尝试从枚举中打印出TestingOneTestingTwo字符串,如下所示
 cout << "From command" << Testing::TestingOne << endl;
 cout << "From command" << Testing::TestingTwo << endl;

但是在cout上方以某种方式打印出01吗?我最近开始使用C++,有点困惑。

我做错什么了吗?我只是想从枚举类中打印实际的字符串值。

最佳答案

如果有更好的方法,请有人纠正我,但是我知道的方法是使用宏。

只需输入#define str(x) #x这将x替换为代码中编写的名称。

然后使用例如:cout << "From command" << str(Testing::TestingOne) << endl;

关于c++ - 如何从C++中的enum类中打印出字符串? ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23973798/

10-17 02:14