前言

规范的注释是一个良好的编程习惯。

Doxygen可以直接将注释提取为程序文档,便于开发人员使用

本文主要介绍了Doxygen的使用方法,更多细节请阅读官方文档


一、Doxygen是什么?

doxygen是一个文档生成工具,用于为源码生成文档,我们可以在代码中按照doxygen要求的语法编写代码注释,然后使用doxygen将程序中的注释提取出来生成一个文档

我们一般都把注释写在代码中,所以使用doxygen生成的文档也可以非常方便地更新。Doxygen还会在文档中引用源码文件,故我们也可以在文档中方便地查看源码

二、Doxygen的安装

1.windows

下载软件.软件安装过程基本无脑下一步

2.Linux

(1).使用命令安装

sudo apt-get install doxygen
sudo apt-get install doxygen-gui

(2).使用源码安装

下载压缩包:如doxyen-1.11.0.src.tar.gz

tar zxvf doxyen-1.11.0.src.tar.gz
cd doxyen-1.11.0
./configure
make
sudo make install

(3).安装Graphviz和HTML Help Workshop(可选)

Doxygen 使用HTML Help Workshop可以生成 CHM 格式的文档

Graphviz在Doxygen用于自动生成类图的工具。

官网:GraphvizHTML Help Workshop

注:记住安装路径,配置到Doxygen中

三、DoxygenHTML HELP的使用

1.配置Wizard



注:工作目录和源文件目录一般保持一致





2.配置Expert



3.运行

四、Doxygen语法

1.特殊命令

命令 字段名 语法
@file 文件名 file [< name >]
@brief 简介 brief
@author 作者 author
@mainpage 主页信息 mainpage [(title)]
@date 年-月-日 date
@author 版本号 version
@copyright 版权 copyright
@param 参数 param [(dir)] < parameter-name>
@return 返回 return { description of the return value }
@retval 返回值 retval
@bug 漏洞 bug
@details
细节 details
@pre 前提条件 pre { description of the precondition }
@post 说明代码项之后的使用条件
@see 参考 see
@link 连接(与@see类库,{@link www.google.com}) link < link-object>
@throw 异常描述 throw < exception-object>
@exception
对一个异常对象进行注释
@todo 待处理 todo
@warning 警告信息 warning
@example 弃用说明。可用于描述替代方案,预期寿命等 deprecated
@deprecated 弃用说明。可用于描述替代方案,预期寿命等 deprecated
@code 在注释中开始说明一段代码,直到@endcode命令
@endcode 注释中代码段的结束
@since 通常用来说明从什么版本、时间写此部分代码。
@attention 注意

2.注释风格

(1).文件注释

注:位于文件开头

/**
* @file 文件名
* @brief 简介
* @details 细节
* @author 作者
* @version 版本号
* @date 年-月-日
* @copyright 版权
*/

(2).函数注释

 /**
* @brief 函数描述
* @param 参数描述
* @return 返回描述
* @retval 返回值描述
*/

(3).常量/变量注释

一般常量/变量可以有两种形式:

  • 常量/变量上一行注释
  • 常量/变量后注释
``///定义一个变量
int a; int a; ///< 定义一个变量

Doxygen基本使用教程的更多相关文章

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

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

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

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

  3. Xcode4快速Doxygen文档注释 — 简明图文教程

    转自:http://blog.csdn.net/totogo2010/article/details/9100767 准备2个文件: 文件一,ThisService.app 文件二,Doxygen.r ...

  4. 使用Xcode HeaderDoc和Doxygen文档化你的Objective-C和Swift代码

    在一个应用的整个开发过程中涉及到了无数的步骤.其中一些是应用的说明,图片的创作,应用的实现,和实现过后的测试阶段.写代码可能组成了这个过程的绝大部分,因为正是它给了应用生命,但是这样还不够,与它同等重 ...

  5. Bullet的学习资源(用Doxygen生成API文档)

    Bullet 全称 Bullet Physics Library,是著名的开源物理引擎(可用于碰撞检测.刚体模拟.可变形体模拟),这里将bullet的学习资源整理一下,希望能帮助入门者少走弯路. 看下 ...

  6. KinectV1+Ubuntu 14.04安装教程

    前言      个人理解错误的地方还请不吝赐教,转载请标明出处,内容如有改动更新,请看原博:http://www.cnblogs.com/hitcm/      如有任何问题,feel free to ...

  7. 基于VirtualBox安装Ubuntu图文教程

    基于VirtualBox虚拟机安装Ubuntu图文教程 一. 下载安装VirtualBox 官网下载VirtualBox,目前版本:VirtualBox 5.1.8 for Windows hosts ...

  8. iOS:Tools:快速注释Doxygen

    Xcode5有个新特性就是自己定义的函数也会被检测集成到代码提示里面,也就是在Quick Help有提示.如 /** * @brief 设置id * * @param id 要设置的id */ +(v ...

  9. [C] c99int(让VC等编译器自动兼容C99的整数类型)V1.02。源码托管到github、添加CMake编译配置文件、使用doxygen规范注释

    新版本—— http://www.cnblogs.com/zyl910/p/zlstdint_v100.html[C] zlstdint(让VC.TC等编译器自动兼容C99的整数类型)V1.0.支持T ...

  10. 利用doxygen提高源代码阅读效率

    阅读开源项目的源代码是提高自己编程能力的好方法,而有一个好的源代码阅读工具无疑能够让你在阅读源代码时事半功倍.之前找过不少源代码阅读工具,像SourceInsight.sourcenav.scitoo ...

随机推荐

  1. nginx启动失败 Starting nginx nginx [fail]

    nginx -t :测试配置文件是否有语法错误 看看报什么错误,我的是忘记给权限了 nginx: [alert] could not open error log file: open() " ...

  2. 启动workman stream_socket_server() has been disabled for security reasons

    启动workman报错 Workerman[start.php] start in DEBUG mode stream_socket_server() has been disabled for se ...

  3. ORACLE数据挖掘之 MSET-SPRT

    虽然是熟悉的Oracle数据库,但关于机器学习.数据挖掘这方面的知识笔者起初也是不了解的,文中MSET相关设置来源于同事提供的sample,在测试过程中边查资料边学习吸收,也因此看到了别样的Oracl ...

  4. 安装ip冲突

  5. [源码系列:手写spring] IOC第八节:BeanFactoryPostProcessor和BeanPostProcessor

    内容介绍 BeanFactoryPostProcessor和BeanPostProcessor是spring中具有重量级地位的两个接口,理解了这两个接口的主要作用,基本就理解Spring的核心原理了. ...

  6. [每日算法] leetcode第2题:两数相加

    leetcode第2题入口 题目描述 给你两个 非空 的链表,表示两个非负的整数.它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字. 请你将两个数相加,并以相同形式返回一个表 ...

  7. 舵机SG90详解

    舵机,也叫伺服电机,在嵌入式开发中,舵机作为一种常见的运动控制组件,具有广泛的应用.其中,SG90 舵机以其高效.稳定的性能特点,成为了许多工程师和爱好者的首选,无论是航模.云台.机器人.智能小车中都 ...

  8. 匿名内部类、lambda匿名函数表达式

    a.匿名内部类的定义格式: 接口名称 对象名 = new 接口名称(){ //覆盖重写所有抽象方法 }: 一. /** * lambda匿名函数的使用 * Lambda省去面向对象的条条框框,格式由3 ...

  9. mybatis——分页插件PageHelper的使用

    项目开发中涉及列表查询时,经常会需要对查询结果进行分页处理:常用的一个插件--PageHelper,是国内非常优秀的一款开源的mybatis分页插件,它支持基本主流与常用的数据库,一致支持mysql. ...

  10. 为什么 MySQL 选择使用 B+ 树作为索引结构?

    为什么 MySQL 选择使用 B+ 树作为索引结构? MySQL 选择 B+ 树作为其索引结构的主要原因是它具有以下几个优势,这些优势使得 B+ 树非常适合用于数据库系统中的索引实现. 1. 高效的范 ...