我正在向一个用 Doxygen 记录的大型库添加代码。我希望 Doxygen 文档中不包含某些文件。
doxyfile 包含许多包含和排除特定文件的控件,但是由于很多人都为这个库做出了贡献,我宁愿避免修改 doxyfile。
我是否可以将任何特殊命令放入文件中,指示 Doxygen 忽略整个文件?
您不能通过特殊命令忽略文件,但您可以通过将文件的静态或相对路径添加到应排除在EXCLUDE标签中的文件,从 Doxygen 配置文件(通常称为 Doxyfile)的文档中排除文件,例如:
EXCLUDE = ./../lib/stdio.h
Run Code Online (Sandbox Code Playgroud)
通过这种方式,您还可以从文档中排除整个目录:
EXCLUDE = ./../lib
Run Code Online (Sandbox Code Playgroud)
您还可以使用EXCLUDE_PATTERNS标记并使用通配符模式,例如:
EXCLUDE_PATTERNS = */test/*
Run Code Online (Sandbox Code Playgroud)
希望这可以帮助。
如何让 doxygen 忽略某些代码片段?展示了如何做到这一点。您可以将 \cond 放在开头,将 \endcond 放在末尾。另请参阅Doxygen 文档中的如何注释掉注释
请注意,虽然仍会包含该文件,但该文件的内容将被忽略。
如何让 doxygen 忽略某些代码片段?
最简单的新方法是在开始处添加一个带有 \cond 命令的注释块,并在应忽略的代码片段的末尾添加一个带有 \endcond 命令的注释块。当然,这应该在同一个文件中。
但您也可以使用 Doxygen 的预处理器来实现此目的:如果您将
Run Code Online (Sandbox Code Playgroud)#ifndef DOXYGEN_SHOULD_SKIP_THIS /* code that must be skipped by Doxygen */ #endif /* DOXYGEN_SHOULD_SKIP_THIS */围绕应该隐藏和放置的块:
Run Code Online (Sandbox Code Playgroud)PREDEFINED = DOXYGEN_SHOULD_SKIP_THIS在配置文件中,只要ENABLE_PREPROCESSING设置为 YES,Doxygen 就应该跳过所有块。