doxygen文件配置

主要配置修改

整个程序配置分几个部分

  1. Project related configuration options
    项目相关,包括:
    • 项目名
    • 输出目录
    • 输出语言
    • 是否显示继承属性
    • 是否对C、Java、Fortran等优化
  2. Build related configuration options
    • 是否显示私有、静态变量
    • 是否显示 include 文件
    • 是否将文件中brief descriptions重新排序
    • 显示文件
    • 显示作用域
  3. Configuration options related to warning and progress messages
  4. Configuration options related to the input files
    • 源文件位置
    • 字符编码
    • 图片位置
  5. Configuration options related to source browsing
    • 是否显示源程序
    • 忽略程序注释
    • 是否显示调用、被调用相关函数
  6. Configuration options related to the alphabetical class index
  7. Configuration options related to the HTML output
  8. Configuration options related to the LaTeX output
  9. Configuration options related to the RTF output
  10. Configuration options related to the man page output
  11. Configuration options related to the XML output
  12. Configuration options related to the DOCBOOK output
  13. Configuration options for the AutoGen Definitions output
  14. Configuration options related to the Perl module output
  15. Configuration options related to the preprocessor
  16. Configuration options related to external references
  17. Configuration options related to the dot tool

运行使用

doxygen [Doxygen file]

注释

参考自Doxygen注释风格

要点

若想要通过Doxygen生成漂亮的文档,有几个地方需要使用Doxygen支持的风格进行注释:

  1. 头文件
    声明版权,描述文件实现功能,及文件版本信息;
  2. 类、结构体定义
    描述类或结构体实现的功能,同时也可以包含使用方法或注意事项的简要描述;
  3. 类、结构体成员定义
    在成员变量的上方进行简要描述;
  4. 类成员函数、子例程函数定义
    函数功能简要描述;
  5. 函数的详细定义
    函数实现位置处对函数的功能、参数的含义、返回值的含义、使用本函数需要注意的问题、本函数使用其他类或函数的说明等进行详细描述。

注释指令

常用doxygen变量

变量名说明
@file文件的批注说明
@author作者的信息
@brief用于class 或function的简易说明
@param函数中参数的说明
@return函数的返回情况
@retval描述返回值类型
@note注解
@attention注意说明
@warning警告

JavaDoc注释风格

在C风格注释块开始使用两个星号 *

/**
 * ... 描述 ...
 */

简要描述

/**   Brief description  
 *    description continued  
 *  
 *    Detailed description starts here.  
 */ 

变量描述

/** Detailed description before the variable */
int m_Var;

使用CMake配置doxygen输出文件

在doc文件夹内添加doxygen配置文件Doxyfile.in,对应的CMakeLists.txt文件写为

find_package(Doxygen)
option(BUILD_DOCUMENTATION "Create and install the HTML based API documentation (requires Doxygen)" ${DOXYGEN_FOUND})

if(BUILD_DOCUMENTATION)
    if(NOT DOXYGEN_FOUND)
        message(FATAL_ERROR "Doxygen is needed to build the documentation.")
    endif()

    set(doxyfile_in ${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile.in)
    set(doxyfile ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile)

    # copy the content from `Doxyfile.in` to `Doxyfile`, replace the @VAR@ variables
    configure_file(${doxyfile_in} ${doxyfile} @ONLY)

    add_custom_target(doc
        COMMAND ${DOXYGEN_EXECUTABLE} ${doxyfile}
        WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
        COMMENT "Generating API documentation with Doxygen"
        VERBATIM)

    install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/html DESTINATION share)
endif()

其中configure_file命令会按照Doxyfile.in文件内容新生成一个新的文件,参数@ONLY指定文件Doxyfile.in@VAR@形式的参数会使用CMake变量进行替换。

以上文件全部配置完成后,使用命令make doc即可生成doxygen说明文档。

转载于:https://www.cnblogs.com/li12242/p/5557850.html

<think>好的,我现在需要帮助用户了解Doxygen的详细配置方法。用户已经提供了几个引用来源,我需要仔细分析这些引用内容,并结合我的知识库来给出详细的配置教程和参数说明。首先,我需要确保回答结构清晰,分步骤讲解,同时正确应用系统级指令,比如使用中文、正确的LaTeX格式等。 首先,根据引用[2],Doxygen配置主要涉及配置文件,如Doxyfile。配置文件的生成是通过运行doxygen -g命令,这应该作为第一步。接下来,常用的tag如OUTPUT_DIRECTORY、INPUT、RECURSIVE等需要详细解释。例如,INPUT指定源代码目录,RECURSIVE设置为YES可以递归处理子目录,这些信息来自引用[2]。 然后,引用[4]提到在注释中使用指令,比如使用“\”或“@”符号来添加特殊指令,如\brief、\param等。这部分需要详细说明如何在注释中应用这些指令,以生成丰富的文档。 另外,引用[3]建议参考官网例子,所以我需要提醒用户查阅官网的具体示例,确保他们了解如何正确编写注释。同时,引用[1]提到了DoxygenWizard,这是一个图形化工具,可能对不熟悉命令行的用户有帮助,这部分可以作为配置工具的一个选项进行介绍。 关于高级配置,如生成LaTeX文档、图表配置,引用[2]提到GENERATE_LATEX和HAVE_DOT等参数。需要解释这些参数的作用,比如开启DOT_TOOL_PATH可以生成调用关系图,这对可视化代码结构很有用。 此外,性能优化方面,比如EXCLUDE_PATTERNS用来过滤不需要处理的文件,这也是引用[2]中的内容。这部分需要提醒用户根据项目需求调整,避免处理不必要的文件,提高生成效率。 最后,需要确保回答中引用的部分正确添加引用标识,比如在提到配置文件生成时引用[2],在注释指令部分引用[4]等。同时,生成的LaTeX公式要使用正确的格式,比如独立公式用$$...$$,行内用$...$,但根据用户的问题,可能这部分内容不多,不过如果有数学表达式的话需要正确应用。 现在,我需要组织这些信息,分步骤说明配置方法,包括配置文件调整、注释写法、高级参数等,并确保每个部分都引用了正确的来源。同时,生成的相关问题需要与Doxygen配置相关,比如如何过滤文件、优化文档可读性等,这可以帮助用户进一步探索。</think>### Doxygen 详细配置教程及参数说明 Doxygen配置主要围绕 **配置文件** 和 **注释规范** 展开,以下是具体步骤及关键参数说明: --- #### **一、生成与修改配置文件** 1. **生成默认配置文件** 在项目根目录执行命令: ```bash doxygen -g Doxyfile ``` 这会生成名为 `Doxyfile` 的默认配置文件[^2]。 2. **关键配置参数说明** | 参数 | 作用 | 示例值 | |---|---|---| | `OUTPUT_DIRECTORY` | 指定文档输出目录 | `./docs` | | `INPUT` | 指定源代码路径 | `./src` | | `RECURSIVE` | 是否递归处理子目录 | `YES` | | `EXTRACT_ALL` | 是否提取所有符号(即使无注释) | `NO` | | `GENERATE_LATEX` | 是否生成 LaTeX 文档 | `YES` | | `HAVE_DOT` | 是否生成关系图(需安装 Graphviz) | `YES` | 修改后保存文件,执行 `doxygen Doxyfile` 生成文档[^2]。 --- #### **二、注释规范与指令** 1. **基础注释格式** 使用 `/** ... */` 或 `///` 包裹注释,例如: ```cpp /** * @brief 计算两数之和 * @param a 第一个整数 * @param b 第二个整数 * @return 和值 */ int add(int a, int b); ``` 2. **常用 Doxygen 指令** | 指令 | 作用 | 示例 | |---|---|---| | `\brief` | 函数简要说明 | `\brief 快速排序算法` | | `\param` | 参数说明 | `\param[in] arr 待排序数组` | | `\return` | 返回值说明 | `\return 排序后数组` | | `\code`/`\endcode` | 插入代码块 | 见下方示例 | | `\see` | 参考其他函数或文档 | `\see quick_sort` | ```cpp /// @code /// int result = add(2, 3); // 输出 5 /// @endcode ``` 更多指令参考 [Doxygen 官方手册](https://www.doxygen.nl/manual/commands.html)[^3][^4]。 --- #### **三、高级配置** 1. **生成图表** - 启用 `HAVE_DOT = YES` 并设置 `DOT_PATH` 为 Graphviz 安装路径。 - 使用 `\dot` 指令在注释中插入自定义图表[^1]。 2. **过滤无关文件** 通过 `EXCLUDE_PATTERNS` 排除特定文件,例如: ``` EXCLUDE_PATTERNS = */test/* */build/* ``` 3. **多语言支持** 设置 `OUTPUT_LANGUAGE` 为 `Chinese`,并确保编码一致: ``` OUTPUT_LANGUAGE = Chinese INPUT_ENCODING = UTF-8 ``` --- #### **四、图形化工具辅助** 使用 **Doxywizard** 工具(跨平台)可直观修改配置: 1. 打开工具后加载 `Doxyfile`。 2. 通过 GUI 调整参数并预览效果[^1]。 --- #### **五、公式支持** 若需在文档中插入数学公式,启用配置: ``` USE_MATHJAX = YES ``` 在注释中使用 LaTeX 语法: ```cpp /// 二次方程公式:$$ax^2 + bx + c = 0$$ /// 行内公式示例:$x = \frac{-b}{2a}$ ``` --- §§ 1. 如何通过 Doxygen 过滤项目中不必要的文件? 2. Doxygen 支持哪些图表类型?如何配置调用关系图? 3. 如何提高 Doxygen 生成文档的可读性? 4. 如何将 Doxygen 文档集成到 CI/CD 流程中? --- **引用说明** [^1]: Doxygen 图形化工具与图表配置参考【Doxygen使用教程】。 [^2]: 配置文件核心参数解析来自文章《快速上手 doxygen 配置文件》。 [^3]: 注释规范详见 [Doxygen 官方手册](https://www.doxygen.nl/manual/doxygen_usage.html)。 : 指令使用参考“在注释中加Doxygen支持的指令”说明。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值