有简单的方法将C+枚举转换成字符串吗?
假设我们有一些命名的枚举:
enum MyEnum { FOO, BAR = 0x50};
我在google中搜索的是一个脚本(任何语言),它扫描项目中的所有标头,并生成一个每个枚举都有一个函数的标头。
char* enum_to_string(MyEnum t);
一个类似这样的实现:
char* enum_to_string(MyEnum t){ switch(t){ case FOO: return "FOO"; case BAR: return "BAR"; default: return "INVALID ENUM"; } }
这个问题实际上是带有类型的枚举和未命名的C样式枚举。有人知道这件事吗?
编辑:除了生成的函数之外,解决方案不应该修改我的源代码。枚举在API中,所以使用到目前为止提出的解决方案并不是一种选择。
慕工程0101907
繁花如伊
Qyouu
相关分类