我的枚举项目遇到了问题.在EventDef.h中,
enum EventDef {
EVT1 = 0,
EVT2,
EVT3,
EVT_NUM,
}
Run Code Online (Sandbox Code Playgroud)
通过这种方式,我可以在另一个头文件UIEventDef.h中扩展EventDef系统
#include "EventDef.h"
enum UIEventDef {
UIEVT1 = EVT_NUM,
UIEVT2,
UIEVT3,
}
Run Code Online (Sandbox Code Playgroud)
但是,有一个限制,我不能以同样的方式在NetEvent.h中这样做.
#include "EventDef.h"
enum NetEventDef {
NETEVT1 = EVT_NUM,
NETEVT2, //wrong: this will have the same value as UIEVT2
NETEVT3,
}
Run Code Online (Sandbox Code Playgroud)
在C++中是否有更好的编译时解决方案,例如可以提供帮助的模板?