Doxygen备忘

下载与安装

一般步骤

  • 生成配置文件Doxyfile: doxygen (-s) -g
  • 建立目录结构, 比如Doxyfile文件\doc文件夹(输出)\src文件夹(放代码) ->三者在同一目录下
  • 根据情况设置配置文件中的参数(关键)
  • 运行doxygen Doxyfile生成大概结构
  • 针对每个代码文件写doxygen注释
  • 继续运行doxygen Doxyfile

配置文件Doxyfile设置

DOXYFILE_ENCODING      = UTF-8
PROJECT_NAME = "Project Name"
PROJECT_NUMBER = 1.0
PROJECT_BRIEF = "This is a brief descript."
EXTRACT_ALL = YES
OUTPUT_DIRECTORY = "./doc"
OUTPUT_LANGUAGE = Chinese
FULL_PATH_NAMES = NO
WARN_LOGFILE ="./doc/build.log"
INPUT ="./src"
FILE_PATTERNS =
SOURCE_BROWSER = NO
GENERATE_LATEX = NO
CALL_GRAPH = YES
CALLER_GRAPH = YES
UML_LOOK = YES
RECURSIVE = YES

各种注释规范

文件注释

	/**
* Copyright (c) 2017, All rights reserverd.
*
* @file $file$
* @brief $brief$
* Details.
*
* @author $author$,$email$
* @date $yy$-$mm$-$dd$
* @version $maj$.$min$
*
*************************************************/

命名空间

	/**
* @brief $brief$
* Details.
**/

结构体\枚举

	/**
* @brief $brief$
* Details.
**/

类注释

	/**
* @brief $brief$
* Details.
**/

成员变量注释

  1. 在变量上面加

    /** 成员变量描述 */
  2. 在变量后面加

    /**<成员变量描述 */

函数注释

	/**
* @brief $brief$-$test$
* Details.
* @param $param1$ : $param1_detail$
* @param $param2$ : $param2_detail$
* @return $return_detail$
* -<em>false</em> fail
* -<em>true</em> succeed
* @retval $return_note$
* @deprecated $deprecated$
* @see $see$
* @pre $pre$
**/

备注:

  • note:指定函数注意项事或重要的注解指令操作符

    note格式如下:

    @note 简要说明

  • retval:指定函数返回值说明指令操作符。(注:更前面的return有点不同.这里是返回值说明)

    retval格式如下:

    @retval 返回值 简要说明

  • pre:指定函数前置条件指令操作符

    pre格式如下:

    @pre 简要说明

  • par:指定扩展性说明指令操作符讲。(它一般跟code、endcode一起使用 )

    par格式如下:

    @par 扩展名字

  • code、endcode:指定

    code、endcode格式如下:

    @code

    简要说明(内容)

    @endcode

  • see:指定参考信息。

    see格式如下:

    @see 简要参考内容

  • deprecated:指定函数过时指令操作符。

    deprecated格式如下:

    @deprecated 简要说明 

    调试Bug说明

    解决的bug说明,@bug

    警告说明 (warning)

    定义一些关于这个函数必须知道的事情,@warning

    备注说明 (remarks)

    定义一些关于这个函数的备注信息,@remarks

    将要完成的工作 (todo)

    说明哪些事情将在不久以后完成,@todo

    使用例子说明 (example)

    例子说明,@example example.cpp

关键字收集

@author          作者
@brief 摘要
@version 版本号
@date 日期
@file 文件名,可以默认为空,DoxyGen会自己加
@class 类名
@param 函数参数
@return 函数返回值描述
@exception 函数抛异常描述
@warning 函数使用中需要注意的地方
@remarks 备注
@see see also字段
@note brief下空一行后的内容表示详细描述,但也可以不空行用note表示
@par 开始一个段落,段落名称描述由你自己指定,比如可以写一段示例代码
@code 引用代码段
@endcode 引用代码段结束
@pre 函数前置条件,比如对输入参数的要求
@post 函数后置条件,比如对系统状态的影响或返回参数的结果预期 @param[in|out] 参数名及其解释
@exception 用来说明异常类及抛出条件
@return 对函数返回值做解释
@note 表示注解,暴露给源码阅读者的文档
@remark 表示评论,暴露给客户程序员的文档
@since 表示从那个版本起开始有了这个函数
@deprecated 引起不推荐使用的警告
@see 表示交叉参考

代码文档生成工具Doxygen的使用备忘的更多相关文章

  1. 代码文档生成工具-Doxygen生成CHM和RTF图文教程

    Doxygen是一种开源跨平台的,以类似JavaDoc风格描述的文档系统,可以从一套归档源文件开始,生成chm格式的文档.本文主要讲解如何在winddows下安装doxygen.     1.下载do ...

  2. 文档生成工具doxygen+图像生成工具GraphViz

    文档生成工具doxygen+图像生成工具GraphViz 虽然jdk自带的javadoc也很好用,不过使用doxygen+GraphViz 的组合可以生成许多强大的图(类图.协作图.文件包含/被包含图 ...

  3. 文档生成工具——Doxygen

    参考: 1.https://blog.csdn.net/liao20081228/article/details/77322584 2.https://blog.csdn.net/wang150619 ...

  4. 推荐开源Api文档生成工具——Doxygen

    http://www.stack.nl/~dimitri/doxygen/index.html 非常的方便. 2步生成API文档. 具体信息见官网哟!

  5. 用doxygen+graphviz自动化生成代码文档(附详细教程)

    一.引子 用这两个工具可以自动的遍历代码,并且产生代码文档,我们先来看看效果,然后放出这两个工具的下载地址. 二.工具的下载地址 doxygen:http://www.stack.nl/~dimitr ...

  6. 使用doxygen制作C代码文档

    使用doxygen制作C代码文档 C 代码注释风格约定 行间注释 /*! * * 这里是注释 * */ 行内注释 <code here> /*! 这里是注释 */ doxygen 风格的宏 ...

  7. (转)Doxygen文档生成工具

    http://blog.csdn.net/lostaway/article/details/6446786 Doxygen 是一个支持 C/C++,以及其它多种语言的跨平台文档生成工具.如同 Java ...

  8. 使用JSDoc自动生成代码文档

    译者按: 代码要有规范的注释,遵从jsDoc规则来注释可以生成有用的文档. 原文: Generate docs and host it with JSDoc and GitHub Pages 译者:  ...

  9. Doxygen自动文档生成工具在Eclipse中的集成及使用举例

    你有为软件编写说明文档的苦恼吗?当别人甩给你一个庞大的系统,让你根据里面的代码注释理解后写出一份完整的开发文档,你会怎么办?一个个的看代码 然后耗时N天来写吗?这既是一份苦差事也极其耗时,有没有更好的 ...

随机推荐

  1. Linux开始结束ping命令

    ctrl+c可以终止ping ctrl+z可以暂停ping,该暂停只是把进程放到后台去了,使用命令fg可以调出到前台来 通过以下命令可以设置次数: ping -c    10 (次数)  ip(域名) ...

  2. 基于django的博客系统

    这是前段代码 达到的效果并不是太好,但我还是要发出来,有更好的建议可以和我讨论 后台还算可以 添加了分类和文章两个功能,还在优化,敬请期待....

  3. linux下安装zabbix

    1.安装源:sudo rpm -ivh http://repo.zabbix.com/zabbix/3.2/rhel/6/i386/zabbix-release-3.2-1.el6.noarch.rp ...

  4. unity中给图片换颜色

    slot边框.color = new Color32 (93,165,255,255);

  5. mysql,查询时间戳

    1.查询当前时间1天前的时间点   select date_sub(now() ,interval 1 day)   2.查询当前时间的时间1天之后的时间点   select data_sub(now ...

  6. 优化Android Studio/Gradle构建(转)

    参考:http://hm.itheima.com/thread-204217-1-1.html

  7. innodb_flush_log_at_trx_commit与sync_binlog理解

    innodb_flush_log_at_trx_commit该参数控制重做日志写入磁盘的过程.我们知道 InnoDB 使用“Write Ahead Log”策略来避免数据丢失问题,即依靠重做日志来保证 ...

  8. layabox typescript 安装固定版本

    安装最新版本方法: https://blog.csdn.net/adelais__/article/details/79181474 固定版本(比如2.1.5): C:\Users\Administr ...

  9. 【Spring学习】【Java基础回顾-数据类型】

    Java基础回顾过程中,之前对于Java相关基础知识都是从这个人的博客看一些,那边的内容看一下,觉得不够系统化,决定用xmind脑图的形式,将Java基础知识回顾的作为一个系列,当前正在做的会包含: ...

  10. 理解StringBuilder

    StringBuilder objects are like String objects, except that they can be modified. Internally, these o ...