我有一个字符串文件,我想通过它创建一个包含由字符串命名的值的枚举。例如,列表是:
"a" "b" "c" "d" ...
我想得到像这样的枚举
enum SomeEnum { a, b, c, d };
感谢。
答案 0 :(得分:2)
我建议您使用任何流行的脚本语言(perl,python,tcl)并解析文件并生成您喜欢的枚举。
答案 1 :(得分:2)
你可以使用X-Macros,然后你只需要将你的枚举/字符串放在myfile.h
中。
#ifndef ENUM_CONVERT
#define ENUM_CONVERT(val) val
#define ENUM_HEADER enum SomeEnum
#endif
ENUM_HEADER
{
ENUM_CONVERT(a),
ENUM_CONVERT(b),
ENUM_CONVERT(c),
ENUM_CONVERT(d)
};
#include "myFile.h" // This declares the enum
#define MKSTR(a) #a
#define ENUM_CONVERT(val) MKSTR(val)
#define ENUM_HEADER char *myStrList[]=
#include "myFile.h" // This defines the stringList
答案 2 :(得分:0)
c很难将字符串转换为变量