代码文档生成工具Doxygen的使用备忘
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.
**/
成员变量注释
- 在变量上面加
/** 成员变量描述 */ - 在变量后面加
/**<成员变量描述 */
函数注释
/**
* @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
简要说明(内容)
@endcodesee:指定参考信息。
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的使用备忘的更多相关文章
- 代码文档生成工具-Doxygen生成CHM和RTF图文教程
Doxygen是一种开源跨平台的,以类似JavaDoc风格描述的文档系统,可以从一套归档源文件开始,生成chm格式的文档.本文主要讲解如何在winddows下安装doxygen. 1.下载do ...
- 文档生成工具doxygen+图像生成工具GraphViz
文档生成工具doxygen+图像生成工具GraphViz 虽然jdk自带的javadoc也很好用,不过使用doxygen+GraphViz 的组合可以生成许多强大的图(类图.协作图.文件包含/被包含图 ...
- 文档生成工具——Doxygen
参考: 1.https://blog.csdn.net/liao20081228/article/details/77322584 2.https://blog.csdn.net/wang150619 ...
- 推荐开源Api文档生成工具——Doxygen
http://www.stack.nl/~dimitri/doxygen/index.html 非常的方便. 2步生成API文档. 具体信息见官网哟!
- 用doxygen+graphviz自动化生成代码文档(附详细教程)
一.引子 用这两个工具可以自动的遍历代码,并且产生代码文档,我们先来看看效果,然后放出这两个工具的下载地址. 二.工具的下载地址 doxygen:http://www.stack.nl/~dimitr ...
- 使用doxygen制作C代码文档
使用doxygen制作C代码文档 C 代码注释风格约定 行间注释 /*! * * 这里是注释 * */ 行内注释 <code here> /*! 这里是注释 */ doxygen 风格的宏 ...
- (转)Doxygen文档生成工具
http://blog.csdn.net/lostaway/article/details/6446786 Doxygen 是一个支持 C/C++,以及其它多种语言的跨平台文档生成工具.如同 Java ...
- 使用JSDoc自动生成代码文档
译者按: 代码要有规范的注释,遵从jsDoc规则来注释可以生成有用的文档. 原文: Generate docs and host it with JSDoc and GitHub Pages 译者: ...
- Doxygen自动文档生成工具在Eclipse中的集成及使用举例
你有为软件编写说明文档的苦恼吗?当别人甩给你一个庞大的系统,让你根据里面的代码注释理解后写出一份完整的开发文档,你会怎么办?一个个的看代码 然后耗时N天来写吗?这既是一份苦差事也极其耗时,有没有更好的 ...
随机推荐
- CDH 安装 kafka
前言 其实cloudera已经做了这个事了,只是把kafka的包和cdh的parcel包分离了,只要我们把分离开的kafka的服务描述jar包和服务parcel包下载了,就可以实现完美集成了. 具体实 ...
- 解决git中upstream丢失问题Your branch is based on 'origin/xxxx', but the upstream is gone.
转自 https://blog.csdn.net/limengke123/article/details/77850134
- 学生管理系统(javaweb版)
准备用javaweb 的技术做一个简单的学生管理系统 打算不用登陆的那种,直接进入管理界面. 完成增删改查的功能. 慢慢开始更新,先写那么多.
- Linux 进程同步和通信
为了同步进程所以需要进程通信 管道(有名:文件形式存在,无名:仅限于父子进程间通信) 消息队列 信号量 共享存储 套接字(可用于不同机器)
- Heroku登录问题
second_app 这一步还没有完成,登录接口维护.
- LinkedIn TAG
List1 [leetcode]243. Shortest Word Distance最短单词距离 Two Pointers [leetcode]244. Shortest ...
- php tp3.2生成二维码
public function qrcode() { // 二维码链接 $href = 'http://' . $_SERVER['HTTP_HOST'] . '/?g=diapp&m=reg ...
- synchronized锁机制 之 代码块锁(转)
synchronized同步代码块 用关键字synchronized声明方法在某些情况下是有弊端的,比如A线程调用同步方法执行一个较长时间的任务,那么B线程必须等待比较长的时间.这种情况下可以尝试使用 ...
- Python播放、关闭音乐代码
1.安装pygame:win + r :打开控制台输入:pip install pygame 2.#导入 import time import pygame 3.设置音乐绝对路径 #音乐路径 file ...
- Rendering Problems Couldn't resolve resource @dimen/y20
(转)文章转自 songzi1228 的 https://blog.csdn.net/songzi1228/article/details/80255058 本人亲自试用,妥妥的解决了我的问题. R ...