假设我们有一些命名的枚举:
enum MyEnum {
FOO,
BAR = 0x50
};
我搜索的是一个脚本(任何语言) ,它扫描我的项目中的所有头,并生成一个每枚举一个函数的头。
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 中的,因此直到现在都不能使用提议的解决方案。