void f (int);被正确解析为函数声明,但
const int (a);也被视为名称为
int
的函数声明,因为只分析语法,不分析语义。如果可以检测到多余的大括号,如int *(a[20]);那么 Doxygen 将删除大括号并正确解析结果。
并非所有包含在文档中的代码片段中的名称都由链接替换(例如,当使用 SOURCE_BROWSER = YES
时),并且指向重载成员的链接可能指向错误的成员。为每个函数生成的“引用自”列表也是如此。
部分原因是代码解析器目前不够智能。我会在将来尝试改进这一点。但即使有了这些改进,也不能将所有内容都正确链接到相应的文档,因为可能存在歧义或缺乏关于代码片段所在上下文的信息。
Doxygen 的开发高度依赖于您的输入!
如果您正在尝试使用 Doxygen,请告诉我您对它的看法(您是否缺少某些功能?)。即使您决定不使用它,也请告诉我原因。
错误在 GitHub 的 问题跟踪器中进行跟踪。在提交新错误之前,请先在数据库中搜索是否已有人提交了相同的错误。如果您认为找到了一个新错误,请报告它。
如果您不确定某件事是否是错误,请先在 用户邮件列表 或在 Stack Overflow 上使用 doxygen
标签寻求帮助(需要订阅)。
如果您只发送对错误的(模糊)描述,通常不会有太大帮助,我将花费更多时间来弄清楚您的意思。在最坏的情况下,您的错误报告甚至可能被我完全忽略,因此始终尝试在您的错误报告中包含以下信息
doxygen --version
或 doxygen --Version
获取更多信息)。-s
标志来保持其较小(使用 doxygen -s -u [configName]
从现有配置文件中剥离注释。更好的是,在使用的 [configName]
上使用 -x
或 -x_noenv
标志来获取使用的设置与 Doxygen 默认设置之间的差异,因此使用 doxygen -x [configName]
)。doxygen -d
。选项 preprocessor
可能会提示 Doxygen 如何理解您的输入文件。您可以(并且鼓励您)为报告的错误添加补丁。如果您这样做,请在 pull request form 中使用“issue #NUMBER TITLE”作为标题,其中“NUMBER”和“TITLE”指的是 GitHub 上相关的 issue。
如果您有关于如何修复现有错误和限制的想法,请在 开发者邮件列表(需要订阅)上讨论它们。如果您不想通过错误跟踪器或邮件列表发送补丁,也可以直接发送至 doxyg.nosp@m.en@g.nosp@m.mail..nosp@m.com。
对于补丁,请使用“diff -uN”或包含您修改的文件。如果您发送多个文件,请将所有内容打包或压缩,这样我只需要保存和下载一个文件。