3

我是 Doxygen 的新手,最近遇到了一个我无法解决的问题。我有这段记录在案的代码:

/*!
    \def nAsserts
    Uncomment that line so that all asserts would be removed
*/
//#define nAsserts

它应该告诉用户在他们希望删除所有断言但 doxygen 向我返回警告时取消注​​释该行:

警告:找到未知定义 nAsserts 的文档

我认为问题在于 doxygen 忽略了所有注释代码,那么有什么方法可以解决这个问题或解决它吗?

4

1 回答 1

4

不确定这是否是最佳选择,但您可以使用以下方法。

修改配置文件以包含PREDEFINED参数:

ENABLE_PREPROCESSING = YES
MACRO_EXPANSION      = YES
EXPAND_ONLY_PREDEF   = YES
PREDEFINED           = "DOXYGEN=1"

在您的代码中,执行以下操作:

#if DOXYGEN
#define nAsserts
#endif

Doxygen 遵循自己的预处理器,可以有条件地包含/排除源模块部分。

于 2013-04-26T19:35:14.800 回答