You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何配置Doxygen识别并收录//开头的普通注释块

Doxygen 识别普通多行 // 注释块的配置方案

你现在用的是不带Doxygen专用标记的普通C行注释块,格式为:

//
// ... 注释文本 ...
//

按下面的规则修改Doxyfile配置,就能让Doxygen正常识别、收录这类注释作为对应代码实体的文档:

  • 基础适配项
    • 把OPTIMIZE_OUTPUT_FOR_C设为YES:针对C语言做解析优化,避免把C语法按C++规则误判。
    • 把EXTRACT_ALL设为YES:强制Doxygen提取所有代码实体的关联注释,不会因为注释没带专用Doxygen前缀就直接跳过。
  • 核心识别配置
    Doxygen默认只认/** */、/*! */、///、//!这类带特殊标记的注释块,普通双斜杠//默认会被当成普通代码注释忽略,所以需要加一个轻量输入过滤器,在解析前自动把这类注释的前缀替换成Doxygen可识别的三斜杠标记:
    • 把INPUT_FILTER设为sed -e 's|^//$|///|' -e 's|^// |/// |':这个规则只会匹配两种行做替换:单独成行的//(也就是你注释块的首尾分隔行)、开头为// 带空格的注释内容行,不会干扰代码里其他位置的行内//注释。
    • 把FILTER_PATTERNS设为*.c,*.h:指定过滤器只处理C源文件和头文件,不影响其他类型文件。
    • 把FILTER_SOURCE_FILES设为YES:开启源文件输入过滤,让上面配置的过滤器生效。
  • 可选优化项
    • 把MULTILINE_CPP_IS_BRIEF设为NO:连续的多行注释会全部作为详细描述,不会把第一行强行识别为简介就截断后续内容。
    • 把JAVADOC_AUTOBRIEF设为NO:关闭Javadoc风格的自动简介截断,适配你现在用的自由格式注释。

如果你在Windows环境下没有sed命令,换用等效的PowerShell命令或者简单Python脚本实现同样的前缀替换逻辑就行,核心就是在Doxygen解析源文件前,给这类块注释的每一行前补上第三个斜杠,变成Doxygen默认支持的///注释格式。

内容的提问来源于stack exchange,提问作者mara004

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.30 17:15:45