一般回答您的问题:要创建 doxygen 中任何内容的聚合出现列表,请使用\xrefitem
我们在代码审查过程中使用它作为工具。我使用自定义标签标记代码,该标签\reviewme
将该功能添加到需要同行评审的所有代码列表中。下一个人可以过来清除那个标签。我们还有另一个自定义标签\reviewedby
,它不使用\xrefitem
,只是将接收者的姓名和日期放在代码块中,说明谁查看了它以及何时查看。随着大型代码库和更多开发人员的扩展,这变得有点笨拙。现在我们正在寻找与我们的版本控制过程集成的工具,以更好地处理这个问题。但是当我们开始这个项目时,它运行良好并且符合小额预算。但是那个例子应该给你一个有能力的想法。
这是输出的屏幕截图 - 专有内容和汽车名称已编辑:

以下是我们如何在 doxy 文件中将此自定义标签作为别名添加到 xrefitem 中,如下所示
ALIASES = "reviewme = \xrefitem reviewme \"This section needs peer review\" \"Documentation block or code sections that need peer review\""
要从 GUI 添加它,您将去Expert->Project->Aliases
添加这样一行
reviewme = \xrefitem reviewme "This section needs peer review" "Documentation block or code sections that need peer review"
同样的事情,只是不需要在整个事情周围加上引号并避开内部引号。
\xrefitem
是事物如何喜欢\todo
或\bug
在 doxygen 中工作的基础。你可以列出你心中想要的任何东西。
专门针对 MISRA 例外:Lundin 的帖子有很多优点。我会考虑的。我认为记录编码标准例外情况的更好地方是静态分析工具本身。许多工具都有自己的注释,您可以在其中将违反规则归类为“有正当理由”或其他。但通常这不会将它们从列表中删除,它只允许您过滤或排序它们。\xrefitem
也许您可以在 doxygen 之前运行的脚本中使用 REGEX,如果您真的担心,它将用自定义替换工具特定的注释。反之亦然,将 doxy 注释替换为工具的注释。