Doxygen不会扩展宏

时间:2014-01-31 15:50:17

标签: c++ macros doxygen

这似乎是一项非常简单的任务,但我无法让Doxygen扩展宏。我使用的是版本1.6.3,1.7.4,1.7.6和1.8.6。我也在Google上进行了大量搜索,但仍然失败了。

我有一个c ++文件,其中只包含以下行(从Doxygen文档中复制):

#define CONST_STRING const char *
 static CONST_STRING version = "2.xx";

我已按照文档设置:

ENABLE_PREPROCESSING   = YES
MACRO_EXPANSION        = YES

然后添加以下内容:

EXPAND_ONLY_PREDEF     = YES
EXPAND_AS_DEFINED      = CONST_STRING 

然后

SKIP_FUNCTION_MACROS   = YES (previously NO)

我从代码生成中得到的只有:

1 #define CONST_STRING const char *
2 static CONST_STRING version = "2.xx";

我做错了什么?任何建议表示赞赏。

1 个答案:

答案 0 :(得分:0)

是什么让你认为你做错了什么?

您应该在该源文件的文档页面的“变量”部分中看到version。如果您已启用源代码输出,则变量version应该超链接到该变量文档。

如果您使用doxygen注释来定义变量的定义,那么您的文档会更好看。继续这个例子,

//! Define a constant string type.
//! @deprecated Use the typedef const_string_t instead.
#define CONST_STRING const char *

//! Software version number
static CONST_STRING version = "2.xx";