Files
gjm 164968b62e chore
把非utf8-bom编码的cpp/h文件改为 utf8 bom 编码, msvc识别utf8编码时,如果不是bom格式的,会使用当前cp_oem来解码.
2026-10-04 00:04:20 +08:00

52 lines
833 B
C

#pragma once
#define DEF_XDATA_KEY(key) static const CString key
#define IMP_XDATA_KEY(cls,key) const CString cls::key=_T(#key)
#define DEF_XDATA_FUN(func,type,key)\
bool Set##func(const type &v)\
{\
AssertWriteEnabled();\
return m_mapSpecXData.SetAt(key, v) == TRUE ? true : false;\
}\
##type Get##func() const\
{\
assertReadEnabled();\
type v;\
m_mapSpecXData.GetAt(key, v);\
return v;\
}
#define DEF_XDATA_KEY_FUN(func,type,key)\
private:\
DEF_XDATA_KEY(key);\
public:\
DEF_XDATA_FUN(func, type, key)
#define DECLARE_ENUM(E) \
struct E \
{ \
public: \
E(int value = 0) : _value((__Enum)value) { \
} \
E& operator=(int value) { \
this->_value = (__Enum)value; \
return *this; \
} \
operator int() const { \
return this->_value; \
} \
\
enum __Enum {
#define END_ENUM() \
}; \
\
private: \
__Enum _value; \
};