如何通过在C文件中记录#defines来保持doxygen?

Chr*_*son 9 c doxygen c-preprocessor

#define在标题中有值,我当然希望Doxygen记录,但我在C文件中有其他我认为是静态常量,我不希望Doxygen记录它们.像傻瓜一样简单愚蠢的东西

#define NUMBER_OF(a) (sizeof((a))/sizeof((a)[0]))
#define MSTR(e) #e
Run Code Online (Sandbox Code Playgroud)

如何让Doxygen不将它们放入#define它创建的文档中?我试过用它标记,@internal但似乎没有帮助.

关于Doxygen的一个有点相关的问题#define,我怎样才能得到:

#define SOME_CONSTANT 1234 /**< An explanation */
Run Code Online (Sandbox Code Playgroud)

在输出中输入"SOME_CONSTANT"和"An explain"而不是"1234"?

小智 9

无需使用\cond\endcond命令.您只需使用以下\hideinitializer命令即可隐藏初始化程序:

#define SOME_CONSTANT 1234 /**< An explanation @hideinitializer */
Run Code Online (Sandbox Code Playgroud)

关于第一个问题,您可以设置HIDE_UNDOC_MEMBERS = YES并且只有具有Doxygen文档块的宏将显示在输出中.


小智 5

您可以在 doxyfile 中设置 MAX_INITIALIZER_LINES = 0 以隐藏定义的值。


mou*_*iel 3

您可以使用标签从 Doxygen 解析中排除代码的任何部分\cond ... \endcond

编辑:一些相关问题: