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中Nginx安装教程

    Nginx 是一个很强大的高性能Web和反向代理服务器,它具有很多非常优越的特性: 在连接高并发的情况下,Nginx是Apache服务器不错的替代品:Nginx在美国是做虚拟主机生意的老板们经常选择的 ...

  2. mybatis generator 源码学习

    mybatis/generator 源码地址mybatis/parent 源码地址1. 分别点击Download ZIP下载到本地. 2. 解压generator-master.zip中的core到g ...

  3. OO_多项式求导_单元总结

    概述: 面向对象第一单元的作业是三次难度依次递增的多项式求导.第一次作业是仅包含带符号整数和幂函数的多项式求导,例如:-1+xˆ233-xˆ06:第二次是在前面的基础上增加了三角函数的求导,例如:-1 ...

  4. Left Join B表,只取B表一条记录

    --用OUTER APPLY select b.* FROM a表 a OUTER APPLY () * from b表 WHERE [Name] = a.[AName] ORDER BY BNo d ...

  5. .NET Core 微服务实例

    关于微服务,MSDN给出了定义和架构图:https://docs.microsoft.com/zh-cn/azure/architecture/guide/architecture-styles/mi ...

  6. jmeter javamail 邮件格式再优化(由详情——>改为统计)

    前言:之前扩展的ant—jmeter支持邮件附件形式上传以及邮件内容的html文件格式. 如图: 由于邮件的内容格式是详情信息,也就是说直观的显示的是case,但由于case的增加,邮件内容越来越大! ...

  7. oracle service name sid , 用户 和 表空间

    oracle 的四个概念: 数据库: 就是一堆静态的数据文件.注意是静态的 instance 实例: 可以类比数据库连接. 实例就是为了操作数据库而开辟的进程和内存空间,有了这个实例你才能操作数据库. ...

  8. super()调用父类构造方法

    super()表示调用父类中的构造方法 1.子类继承父类,子类的构造方法的第一行,系统会默认编写super(),在调用子类的构造方法时,先调用父类的无参数构造方法 2.如果父类中只有有参数构造方法,那 ...

  9. 使用Python完成排序(快排法、归并法)

    class Sort(object): def quick_sort(self, ls): self.quick_sort_helper(ls, 0, len(ls) - 1) return ls d ...

  10. java将图片传为设定编码值显示(可做刺绣)

    import java.awt.Color; import java.awt.image.BufferedImage;import java.io.File;import java.io.IOExce ...