16,472
社区成员
发帖
与我相关
我的任务
分享
//.h文件中
#ifdef _TYPE_STRING
#define MY_ENUM_BEGIN(MyEnumStrs) const char* #MyYenumStrs[] = {
#define MY_ENUM_ENTRY(x) #x,
#define MY_ENUM_END };
#endif
#ifdef _TYPE_ENUM
#define MY_ENUM_BEGIN(MyEnumStrs) enum MyEnum {
#define MY_ENUM_ENTRY(x) x,
#define MY_ENUM_END };
#endif
MY_ENUM_BEGIN(MyEnum)
MY_ENUM_ENTRY(Item0)
MY_ENUM_ENTRY(Item1)
MY_ENUM_END
//.cpp文件中
#define _TYPE_STRING
#include "*.h"
#undef_TYPE_STRING
#define _TYPE_ENUM
#include "*.h"
#undef _TYPE_ENUM
//.h文件中
#ifdef _TYPE_STRING
#define MY_ENUM_STRING(MyEnumStrs) const char* #MyYenumStrs[] = {
#define MY_STRING_ENTY(x) #x,
#define END_ENUM_STRING };
#endif
#ifdef _TYPE_ENUM
#define MY_ENUM_BEGIN(MyEnumStrs) enum MyEnum {
#define MY_ENUM_ENTRY(x) x,
#define MY_ENUM_END };
#endif
//.cpp文件中
#define _TYPE_STRING
#include "*.h"
#undef_TYPE_STRING
#define _TYPE_ENUM
#include "*.h"
#undef _TYPE_ENUM
[Quote=引用 5 楼 的回复:]
//另外一个...
#define MY_ENUM_STRING(MyEnumStrs) const char* #MyYenumStrs[] = {
#define MY_STRING_ENTY(x) #x,
#define END_ENUM_STRING };
#define ENUM_ENTRY(x,y) enum MyEnum {\
x,\
y,\
};\
const char* MyEnumStrs[] = {\
#x,\
#y,\
};