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