在查看poco库时,我看到一些宏具有相同的标识符以及替换文本:
例如在文件XML / inlucde / XML / expat.h
中 47 XML_STATUS_ERROR = 0,
48 #define XML_STATUS_ERROR XML_STATUS_ERROR
49 XML_STATUS_OK = 1,
50 #define XML_STATUS_OK XML_STATUS_OK
51 XML_STATUS_SUSPENDED = 2
52 #define XML_STATUS_SUSPENDED XML_STATUS_SUSPENDED
我想知道如何定义这样的宏。
答案 0 :(得分:4)
我可以在这里考虑两个用例:
#define
d之前的其他地方,#ifdef
标识符(即检查它们是否已定义)。 答案 1 :(得分:1)
这看起来确实荒谬,不是吗?我唯一的想法是它允许你在符号上使用#ifdef
,但我不能看到它在这个特定的例子中有用。