doxygen讲解
doxygen 参数类型
doxygen 参数类型摘要:1.Doxygen 简介2.Doxygen 参数类型概述3.Doxygen 参数类型的分类4.常见Doxygen 参数类型介绍5.Doxygen 参数类型的使用示例6.总结正文:【1.Doxygen 简介】Doxygen 是一个用于从源代码中生成文档的工具,特别适用于C、C++ 和Java 等编程语言。
它可以自动提取代码中的类、函数、变量等信息,并生成结构清晰、易于理解的文档。
在编写项目文档时,利用Doxygen 可以大大提高效率。
【2.Doxygen 参数类型概述】Doxygen 参数类型指的是在生成文档过程中,Doxygen 可以识别的变量、函数、类等元素的类型。
通过指定不同的参数类型,可以控制Doxygen 如何处理这些元素,以及在生成的文档中如何呈现。
【3.Doxygen 参数类型的分类】Doxygen 参数类型主要分为以下几类:- 变量类型(如:int、float、double 等)- 函数类型(如:void、int、void 等)- 类类型(如:class、struct 等)- 枚举类型(如:enum 等)- 宏类型(如:#define、#ifdef 等)【4.常见Doxygen 参数类型介绍】以下是一些常见的Doxygen 参数类型及其介绍:- `int`: 整型变量或函数返回值类型- `float`: 浮点型变量或函数返回值类型- `double`: 双精度浮点型变量或函数返回值类型- `void`: 函数无返回值类型,或表示某个变量没有值- `char`: 字符型变量或函数返回值类型- `const`: 常量类型,表示不可修改的变量或函数参数- `volatile`: 表示变量的值可能会被其他线程修改- `static`: 表示静态变量或函数,仅在定义它的源文件中有效- `class`: 表示一个类,包含类的成员变量和成员函数- `struct`: 表示一个结构体,包含结构体的成员变量和成员函数- `enum`: 表示一个枚举类型,包含一组有名字的常量- `#define`: 表示一个预处理器宏,用于定义常量或条件编译- `#ifdef`: 表示一个预处理器指令,用于检查某个宏是否已定义【5.Doxygen 参数类型的使用示例】以下是一个简单的Doxygen 参数类型使用示例:```c++/*** @file example.cpp* @brief 示例文件*//*** @class Example* @brief 示例类*/class Example {public:/*** @brief 示例类的构造函数*/Example();/*** @brief 示例类的析构函数*/~Example();/*** @brief 示例类的成员函数* @param int value 传入的整数值* @return int 返回的整数值*/int add(int value);};Example::Example() {/*** @brief 示例类的构造函数实现*/}Example::~Example() {/*** @brief 示例类的析构函数实现*/}int Example::add(int value) {/*** @brief 示例类的成员函数实现* @return int 返回的整数值*/return value + 1;}```在上述示例中,`Example` 类是一个示例类,包含一个构造函数、一个析构函数和一个成员函数。
DOXYGEN代码文档生成工具的使用
本文档旨在介绍 doxygen 的使用及统一代码注释,编写出符合 doxygen 要求的良好的代 码注释风格,并可以利用 doxygen 生成代码文档,提高后续维护人员维护代码的难度,并提 高代码的可读性。
本文档为基于《郑州云涌嵌入式程序规范第一版.doc》,不涉及变量命名、缩进等要求, 仅涉及注释部分的格式,指出统一风格的 Doxygen 可识别的注释格式,作为其补充和修订。
* @details
* @param[in] RTCxRTC peripheral selected, should be LPC_RTC
* @param[in] NewState New State of this function, should be:
*
- ENABLE: The time counters are enabled
可以看到程序清单 4.1 中的注释比我们通常写的代码注释多了些以“ @”开头的标记, 正是这些标记告诉 Doxygen 如何提取文档以及如何组织文档结构的。下面对这段注释进 行解释。
4.1.1 有效注释 “ /**”表示要求 Doxygen 处理这段注释,否则如果写成“ /*”或“ /****” 之类这段注释就会被忽略掉。这样就可以控制哪些注释要出现在文档中供用户阅读,哪 些注释仅仅是给代码编写者或维护者阅读。 4.1.2 定义模块 第 2 行的“ @defgroup”表示定义一个模块,语法是“ @deup RTC 实时时钟”定义了一个名为“实时时钟”的模块。模块 id 为“RTC” 模块 ID 必须使用英文,这个 ID 的作用是区分不同模块,并可供其他模块或注释引用。 下面一行是对“ RTC”模块的说明。 4.1.3 加入到模块 第 7 行“ @ingroup RTC”表示把这个注释块加入到模块“RTC”中。 4.1.4 函数注释
doxygen格式进行函数注释的格式
doxygen格式进行函数注释的格式一、引言在软件开发过程中,良好的代码注释是非常重要的,它能够帮助开发者理解代码逻辑、提高代码可读性,并方便后续的维护和修改。
而d o xy ge n是一种用于生成软件文档的工具,它支持多种编程语言,并且提供了一套注释格式规范,能够方便地生成代码文档。
二、什么是d o x y g e nd o xy ge n是一款开源的软件文档生成工具,它支持C、C++、J av a等多种编程语言,能够根据代码中的注释生成详细的文档内容。
通过d o xy ge n生成的文档,可以包含函数、类、结构体的详细说明,以及函数的参数、返回值等相关信息。
三、函数注释的格式在d ox yg en中,函数注释的格式规范是非常重要的,它能够决定最终生成的文档内容的结构和格式。
下面是一些常用的函数注释格式:1.函数说明/***@br ie f函数功能说明*@pa ra m参数1参数1的说明*@pa ra m参数2参数2的说明*@re tu rn返回值的说明*/在函数注释的第一行可以使用`@br ie f`标签来说明函数的功能,后续可以使用`@pa ra m`标签来说明函数的参数,使用`@re tu rn`标签来说明函数的返回值。
2.参数说明/***@pa ra m参数1参数1的说明*@pa ra m参数2参数2的说明*/在函数注释中,使用`@pa ra m`标签来说明函数的参数,可以对每个参数进行详细的说明。
3.返回值说明/***@re tu rn返回值的说明*/使用`@re tu rn`标签来说明函数的返回值,可以对返回值的含义进行说明。
四、示例下面是一个示例函数的注释格式:/***@br ie f计算两个整数的和*@pa ra ma第一个整数*@pa ra mb第二个整数*@re tu rn两个整数的和*/i n ta dd(i nt a,in tb){r e tu rn a+b;}通过以上的注释格式,我们在生成文档时就能够清晰地了解函数的功能、参数和返回值。
doxygen讲解
取消选项,不然会 显示全路径:如图1.
图1
专家(Expert)模式
专家(Expert)对话框----Messages相关选项
让 doxygen 静悄悄地为你生成文 档,只有出现警告或错误时,才在 终端输出提示信息(不选择). 将WARN_LOGFILE填写为error.txt。 这样,Doxygen会将编译时出现的警 告和错误保存在error.txt ,这样 可以对照修改。
Doxygen生成效果
return 指令操作符讲解
return:指定函数返回说明指令操作符。 return格式如下: @return 简要说明
例: /** * 写入文件 * @Param [in] file 文件编号 * @Param [in] buffer 存放将要写入的内容 * @Param [in] len写入长度 * @return 返回写入的长度 * - -1 表示写入失败 */ int WriteFile(int file, const char* buffer, int len);
note 指令操作符讲解
note:指定函数注意项事或重要的注解指令操作符。
note格式如下: @note 简要说明
例: /** *打开文件函数 *@Param [in] name 文件名 *@Param [in] “rb” 打开模式 *@return 返回文件编号 *- -1表示打开文件失败 *@note 文件打开成功后,必须使用 CloseFile 函数关闭 */ int OpenFile(U8* file_name, U8* file_mode);
专家(Expert)模式
专家(Expert)对话框----Input相关选项
指定输入源文件目录(INPUT).
什么是Doxygen
什么是Doxygen?Doxygen 是一个程序的文件产生工具,可将程序中的特定批注转换成为说明文件。
通常我们在写程序时,或多或少都会写上批注,但是对于其它人而言,要直接探索程序里的批注,与打捞铁达尼号同样的辛苦。
大部分有用的批注都是属于针对函式,类别等等的说明。
所以,如果能依据程序本身的结构,将批注经过处理重新整理成为一个纯粹的参考手册,对于后面利用您的程序代码的人而言将会减少许多的负担。
不过,反过来说,整理文件的工作对于您来说,就是沉重的负担。
一个好的程序设计师,在写程序时,都会在适当的地方加上合适的批注。
如果,能够在撰写批注时,稍微符合某种格式,接着就可以透过一个工具程序依据程序结构及您的批注产生出漂亮的文件。
这将令许多工作繁重的程序设计师有时间多喝几杯咖啡。
Doxygen 就是这样的一个工具。
在您写批注时,稍微按照一些它所制订的规则。
接着,他就可以帮您产生出漂亮的文件了。
因此,Doxygen 的使用可分为两大部分。
首先是特定格式的批注撰写,第二便是利用Doxygen的工具来产生文件。
目前Doxygen可处理的程序语言包含:•C/C++•Java•IDL (Corba, Microsoft及KDE-DCOP类型)而可产生出来的文件格式有:•HTML•XML•LaTeX•RTF•Unix Man Page而其中还可衍生出不少其它格式。
如有了LaTeX 文件后,就可以透过一些工具产生出PS或是PDF档案。
在多国语言的支持方面,Doxygen 目前可支持的约有2,30种。
自Doxygen 1.2.16开始支持繁体中文(这正是小弟做的好事)。
所以在目前一些Open Source 的程序文档管理器中,Doxygen 算是相当完整的一套。
在程序语言处理上面,Doxygen也算是少数在Borland C++ Builder 的语法下还能够正常运作的工具之一(若非如此,小弟也不会推荐它)。
本文的目的是希望在经过仔细阅读本文之后能够给大家一个概略性的了解。
doxygen 函数代码单行注释
在软件开发中,注释是一种非常重要的编程实践,它可以帮助开发者更好地理解代码、提高代码可读性和可维护性。
而在注释中,函数代码的单行注释是一种常见的方式,它可以在一行内就给出对函数的解释和说明。
让我们来看一下什么是Doxygen。
Doxygen是一个广泛使用的工具,它可以从C++、C、Java等多种程序中提取注释,文档化代码。
这个工具能够以较为规范的方式记录代码注释,并生成代码文档。
在Doxygen中,函数代码的单行注释可以被视为标准的注释格式,从而可以被Doxygen正确地解析和转换为文档。
在实际使用Doxygen进行代码注释时,我们需要注意一些关键点。
首先是注释的格式。
对于函数的单行注释,我们通常会在函数定义的上方,使用连续两个斜杠“//”来注释。
接着是对函数的简要说明,包括函数的功能、参数和返回值等。
在Doxygen中,我们可以使用一些特定的标签来标记函数的参数和返回值,例如@param和@return等。
在撰写函数代码单行注释时,我们应该尽量做到深度和广度兼具。
深度上,我们应该从简单的功能和语法说明开始,逐步深入到函数的应用场景、注意事项、使用示例等方面。
而在广度上,我们应该考虑到不同读者的需求,包括初学者、中级开发者和专业开发者等,从而使得注释能够满足不同层次的读者对函数的理解和运用。
从个人角度来看,函数代码的单行注释是一种非常有效的注释方式,它能够在短时间内给出对函数功能和使用方法的简明说明。
但需要注意的是,单行注释可能有字数限制,无法提供过多细节,这就需要在其他地方进行补充说明。
单行注释也容易被滥用,因此在撰写过程中,我们需要注意控制注释的长度和内容,避免出现冗长、无用的注释。
总结而言,Doxygen的函数代码单行注释是非常有价值的,它能够帮助我们更好地理解和使用函数。
在注释时,我们需要遵循规范的格式和标签,做到深度和广度兼具,以满足不同读者的需求。
我希望未来在撰写代码注释时,能够更加注意注释的质量和适用性,让注释真正成为代码文档中的宝贵财富。
C++ doxygen讲解
模块定义(单独显示一页 )
模块定义格式:
/** * @defgroup 模块名 页的标题名 * @{ 跟c语言{一样起作用域功能. */ … 定义的内容 … /** @} */
模块名只能英文,这个可以随便取.在 一个源文件里不能相同.
例:
/** * @defgroup aa ebookmain.c * @{ */ … 定义的内容 … /** @} */
变量、宏定义、类型定义注释风格类似。 格式: /** 简要说明文字 */ 变量(宏定义或类型定义)
如: /** 简要说明文字 */ #define FLOAT float
/** „*/这是固定格式,还要注意/**这 2个“**”不能少也不能多。其他注释风 格也是这样的。
“@brief ”是注释指令, “@”也 可以用”\”.
武汉中心项目部培训
文档生成工具
Doxygen注释风格
Doxygen指令目的为了生成更丰富与可读性更强的文档。所 以总结5类常用的注释风格说明。
●变量、宏定义、类型定义。
●枚举类型定义、结构体类型定义类似。
●函数定义。 ●模块定义(单独显示一页
)。 ●分组定义(在一页内分组显示)。
变量、宏定义、类型定义简要说明
pre 指令操作符讲解
pre:指定函数前置条件指令操作符 pre格式如下: @pre 简要说明
例: /** *文件关闭函数 * @param file文件编号。 * @retval 0 表示成功 * @retval -1 表示失败 * @pre file 变量必须使用OpenFile 返回值 */ int CloseFile(int file);
code、endcode指令操作符讲解
doxygen配置及使用手册
Doxygen安装及使用手册一简介Doxygen可以从C,C++,java等源代码中提取消息来生成帮助文档,API资料等二下载Doxygen以下,是在linux平台下的demo介绍。
http://www.stack.nl/~dimitri/doxygen/index.htmldoxyen主页去下载doxygen-1.5.5.src.tar.gz三 Doxygen安装安装doxygen-1.5.5.src.tar.gz1 把下载好的doxygen-1.5.5.src.tar.gz拷到自己想要的目录中,我放到了自己的Home目录下。
2 进入相应的目录:本例是在自己的home目录下3 解压#tar -zxvf doxygen-1.5.5.src.tar.gz会在当前目录下生成一个名字为doxygen-1.5.5的目录。
4 在自己的Home目录下建立一个doxygen目录,我们的doxygen以后就安装到这个目录下。
#mkdir doxygen5 进入doxygen-1.5.5目录#cd doxygen-1.5.56 安装:用—prefix选项制定安装目录为/home/lvq/doxygen,lvq为我的用户名,这里可以用~/doxygen代替。
#./configure –prefix ~/doxygen#make#make install这样在~/doxygen 目录就安装好了doxygen软件7 生成配置文件#cd ~/doxygen/bin/# ./doxygen –g 文件名执行这个命令后就会生成一个制定名字的配置文件,这里我们不加文件名,只用./doxygen –g 生成默认配置文件Doxyfile。
四如何使用DoxygenDoxygen可以从源代码中提取消息生成帮助文档,它是根据源代码中的特定注释来实现。
所以,首先要给工程代码书写符合Doxygen格式的注释。
1 以sipproxy小工程为例1)这个工程在/home/lvq/self/sipproxy1/sipproxy-v1.04/目录下。
文档生成工具——Doxygen
⽂档⽣成⼯具——Doxygen参考: 版权声明:本⽂章转载⾃Jhuster的。
未经作者允许,严禁⽤于商业出版,否则追究法律责任。
⽹络转载请注明出处,这是对原创者的起码的尊重1 简介 为代码写注释⼀直是⼤多数程序员有些困扰的事情。
更头痛的是写⽂档,以及维护⽂档的问题,⽽doxygen就能把遵守某种格式的注释⾃动转化为对应的⽂档。
Doxygen是基于GPL的开源项⽬,是⼀个⾮常优秀的⽂档系统,当前⽀持在⼤多数unix(包括linux),windows家族,Mac系统上运⾏,完全⽀持C++, C, Java, IDL(Corba和Microsoft 家族)语⾔,部分⽀持PHP和C#语⾔,输出格式包括HTML、latex、RTF、ps、PDF、压缩的HTML和unix manpage。
有很多开源项⽬(如log4cpp和CppUnit)都使⽤了doxygen⽂档系统。
2 Doxygen配置⽂件2.1 ⽣成Doxygen配置⽂件 运⾏Doxywizard创建配置⽂件。
可以直接点“Save…”按钮,将保存默认的配置⽂件,名为Doxyfile,内容是Doxygen的默认设置。
Doxyfile是普通⽂本⽂件,可以直接打开⼿动编辑。
不过在Doxywizard的界⾯上填写也很⽅便,每个参数都有详细提⽰。
建议⽤Doxywizard 完成第⼀次设置。
以后如果需要调整个别参数,可以直接编Doxyfile。
上述Doxywizard界⾯中提供了⽣成Doxygen⽂档的4个步骤,按照上述步骤⼀步步执⾏就可以⽣成漂亮的⽂档了。
第⼀步是⽣成配置⽂件,提供三种⽅式:Wizard⽅式指简约⽅式,在其中只提供⼀些重要的参数设置,其余的均为默认值;Expert⽅式为详细设置⽅式,通过该选项可以详细地配置Doxygen的各个配置项;Load⽅式,⽤于导⼊以前⽣成的Doxygen配置⽂件,导⼊后可以再点击Expert进⾏修改。
2.2 配置选项含义详解选项含义DOXYFILE_ENCODING Doxygen⽂件的编码⽅式,默认为UTF-8,若希望⽀持中⽂,最好设置为 GB2312PROJECT_NAME Project 的名字,以⼀个单词为主,多个单词请使⽤双引号括住。
doxygen介绍
Doxygen1 简介Doxygen是一种开源跨平台的,以类似Java Doc风格描述的文档系统,完全支持C、C++、Java、Objective-C和IDL语言,部分支持PHP、C#。
注释的语法与Qt-Doc、KDoc和JavaDoc 兼容。
Doxgen可以从一套归档源文件开始,生成HTML格式的在线类浏览器,或离线的LATEX、RTF参考手册。
2 使用步骤由于只是工具的使用,这里不介绍它的原理,直接从使用步骤开始。
Doxygen的使用步骤非常简单。
主要可以分为:1)第一次使用需要安装doxygen的程序2)生成doxygen配置文件3)编码时,按照某种格式编写注释4)生成对应文档doxygen的安装非常简单,linux下可以直接下载安装包运行即可,下载源代码编译安装也是比较通用的编译安装命令。
Doxygen在生成文档时可以定义项目属性以及文档生成过程中的很多选项,使用下面命令能够产生一个缺省的配置文件:doxygen -g config.ini可以根据项目的具体需求修改配置文件中对应的项,具体的修改过程在下面介绍。
修改过的配置文件可以作为以后项目的模板。
让doxygen自动产生文档,平常的注释风格可不行,需要遵循doxygen自己的格式。
具体如何写doxygen认识的注释等哈详细介绍。
当代码编完了,注释也按照格式写好了,,运行下面的命令,相应的文档就会产生在指定的目录中(和配置文件的同一目录下的doc文件夹中,都成文件夹中又有3各文件夹(html(也是构成网页文档的主要语言),latex(一种基于TeX的排版系统),rtf(以纯文本描述内容)))。
doxygen config.ini需要注意的是doxygen并不处理所有的注释,doxygen重点关注与程序结构有关的注释,比如:文件、类、结构、函数、变量、宏等注释,而忽略函数内变量、代码等的注释。
3 C++中具体用法文件的注释:/*! \file license.h\brief license处理函数API头文件.详细描述……*/函数的注释:/*! \fn int GenDevInfo(u8 *sOutFileName, u8 *sUpKeyFileName, u8 *sDevInfoFileName, u32 uLastLicId)\brief 获取设备lic请求信息.\param sOutFileName 生成的请求文件存放路径及名字.\param sUpKeyFileName key文件路径.\param sDevInfoFileName 设备编号dev_no存放路径.\param uLastLicId 上一次导入的licID编号.\retval 0 成功\retval 非0 失败*/类的注释://! A test class./*!A more elaborate class description.*/class Test{public:/** An enum type.* The documentation block cannot be put after the enum!*/enum EnumType{int EVal1, /**< enum value 1 */int EVal2 /**< enum value 2 */};void member(); //!< a member function.protected:int value; /*!< an integer value */}//! class variable./*! Details. */s1,//! class variable./*! Details. */s2;结构体的注释://! A tt struct./*!A more elaborate class description.*/typedef struct _gwchklic_encinfo{u32 dwBeginTime; /*!< an u32 value */}//! struct variable./*! Details. */GWCHKLIC_ENCINFO,//! struct pointer./*! Details. */*PGWCHKLIC_ENCINFO;宏的注释:/*! \def FUNCMAP\brief A macro that rrrrrrrrrrrrrrr.Details.*/#define FUNCMAP 0全局和静态变量://! variable./*! Details. */static int test = 0;//! variable./*! Details. */int test1 = 0;4 文档的生成前的配置修改config.ini中选项(主要几个选项)PROJECT_NAME = lonsin :首页显示名字为lonsinOUTPUT_LANGUAGE = Chinese或English :输出中文或英文FULL_PATH_NAMES = NO :是否要显示全路径的文件名SHOW_INCLUDE_FILES = NO :是否显示包含的头文件INPUT = include/license.h :可以是文件也可以是文件夹INPUT_ENCODING = GB18030 :输入的中文字体(UTF-8 GB18030)FILE_PATTERNS = *.cpp :输入文件的样式(*.c *.h ……)EXCLUDE_SYMLINKS = YES :显示时排除连接或宏EXTRACT_STATIC=NO:是否包含静态变量EXTRACT_PRIVATE=NO:是否显示私有成员。
linuxdoxygen使用说明
linuxdoxygen使用说明目录1.安装doxygen (2)2.配置Doxygen工作环境 (2)3.程序源码文档化 (3)4.程序文档生成 (4)5.Doygen 集成到codeBlocks (4)5.1配置步骤 (4)5.2使用: (4)1. 安装doxygen安装包doxygen-1.7.4.linux.bin.tar.gz命令:1)tar xvfz doxygen-1.7.4.linux.bin.tar.gz2)cd doxygen-1.7.43)./configure4)make5)make install安装后需留意下doxyg的路径,例如:/usr/bin/doxygen2. 配置Doxygen工作环境步骤:6)进入项目目录(test为例说明)cd test/7)生成配置文件Doxygen –g●默认生成的配置文件名为"Doxyfile",也可以采用"doxygen -g your-cfg-filename" 命令格式指定所生成的配置文件名。
如无特殊需要,采用默认的配置文件名即可。
●Doxyfile 文件内容非常多,大概1000 多行,不过其中约4/5 都是注释,每个配置选项都有一段详细的注释。
日后,如果对Doxygen 各配置选项的意义有一定了解,可以在生成配置文件的命令中添加"-s"选项,生成不含注释的配置文件,操作如下:$ doxygen -s -g3)配置文件的相应设置,这里已经有个模板Doxyfile(test文件夹下),可以根据需要更改相应设置# 项目名称,将作为于所生成的程序文档首页标题PROJECT_NAME = “Test# 文档版本号,可对应于项目版本号,譬如svn、cvs 所生成的项目版本号PROJECT_NUMBER = "1.0.0# 程序文档输出目录OUTPUT_DIRECTORY = doc/# 程序文档语言环境OUTPUT_LANGUAGE = Chinese# 如果是制作C 程序文档,该选项必须设为YES,否则默认生成C++ 文档格式OPTIMIZE_OUTPUT_FOR_C = YES# 对于使用typedef 定义的结构体、枚举、联合等数据类型,只按照typedef 定义的类型名进行文档化TYPEDEF_HIDES_STRUCT = YES# 在C++ 程序文档中,该值可以设置为NO,而在C 程序文档中,由于C 语言没有所谓的域/名字空间这样的概念,所以此处设置为YES HIDE_SCOPE_NAMES = YES# 让doxygen 静悄悄地为你生成文档,只有出现警告或错误时,才在终端输出提示信息QUIET = YES# 只对头文件中的文档化信息生成程序文档FILE_PATTERNS = *.h# 递归遍历当前目录的子目录,寻找被文档化的程序源文件RECURSIVE = YES# 示例程序目录EXAMPLE_PATH = example/# 示例程序的头文档(.h 文件) 与实现文档(.c 文件) 都作为程序文档化对象EXAMPLE_PATTERNS = *.c \*.h# 递归遍历示例程序目录的子目录,寻找被文档化的程序源文件EXAMPLE_RECURSIVE = YES# 允许程序文档中显示本文档化的函数相互调用关系REFERENCED_BY_RELATION = YESREFERENCES_RELATION = YESREFERENCES_LINK_SOURCE = YES# 不生成latex 格式的程序文档GENERATE_LATEX = NO# 在程序文档中允许以图例形式显示函数调用关系,前提是你已经安装了graphviz 软件包HAVE_DOT = YESCALL_GRAPH = YESCALLER_GRAPH = YES#让doxygen从配置文件所在的文件夹开始,递归地搜索所有的子目录及源文件RECURSIVE = YES#在最后生成的文档中,把所有的源代码包含在其中SOURCE BROWSER = YES$这会在HTML文档中,添加一个侧边栏,并以树状结构显示包、类、接口等的关系GENERATE TREEVIEW =ALL3. 程序源码文档化准备好Doxygen 的工作环境后,就需要根据Doxygen 所定义的注释规则,对程序源码进行文档化。
doxygen 语法
doxygen 语法Doxygen 语法简介概述:Doxygen 是一种用于生成软件文档的工具,它可以通过分析源代码中的注释来自动生成文档。
在大型项目中,良好的文档是非常重要的,因为它能够帮助开发者更好地理解和使用代码。
Doxygen 提供了一套简洁易用的语法,可以帮助开发者生成清晰、规范的文档。
注释语法:在源代码中,我们可以使用特定的注释语法来描述代码的功能、参数、返回值等信息。
下面是一些常用的注释语法示例:1. 文件注释:/*** @file filename* @brief 文件的简要描述* @details 文件的详细描述*/2. 函数注释:/*** @brief 函数的简要描述* @details 函数的详细描述* @param 参数名称参数描述 * @return 返回值描述*/3. 类注释:/*** @class ClassName* @brief 类的简要描述* @details 类的详细描述*/4. 成员变量注释:/*** @brief 成员变量的简要描述 * @details 成员变量的详细描述 */5. 枚举注释:/*** @brief 枚举类型的简要描述 * @details 枚举类型的详细描述 */6. 宏定义注释:/*** @brief 宏定义的简要描述* @details 宏定义的详细描述*/7. 文件包含注释:/*** @fileincluded*/8. 链接注释:/*** @sa function_name* @see function_name*/生成文档:使用Doxygen 生成文档非常简单,只需要按照以下步骤进行操作:1. 在源代码中添加合适的注释。
2. 创建一个配置文件,配置文件中包含一些生成文档的选项。
3. 运行 Doxygen,指定配置文件作为输入。
4. Doxygen 会根据配置文件的设置,分析源代码并生成相应的文档。
配置文件示例:下面是一个简单的配置文件示例:```PROJECT_NAME = "My Project"OUTPUT_DIRECTORY = docEXTRACT_ALL = YESEXTRACT_PRIVATE = YESEXTRACT_STATIC = YES```在这个示例中,配置文件指定了项目名称为"My Project",生成的文档将保存在"doc" 目录下。
DOXYGEN代码文档生成工具的使用
DOXYGEN代码文档生成工具的使用
一、Doxygen介绍
Doxygen是一种使用C++编写的自由、开源的文档编译器,用于基于
源代码的文档生成。
Doxygen可以用来生成多种不同的文档格式,如HTML、LaTeX、PDF、PostScript、Man和RTF,可以自带功能,同时可以输出各
种类图、流程图、以及无数其他图表来帮助说明意图和定义。
二、Doxygen使用
Doxygen的配置文件是一个可在配置文件中设置不同参数的文本文件。
用户可以在其中设置不同的文档输出格式、文件类型、源文件路径、源文
件编码格式、对表达式的评估等参数,以控制Doxygen的输出文档。
Doxygen可以根据代码中的注释来生成文档,因此,要想使用Doxygen生成文档,代码中需要有完整的注释,包括文件简介、变量注释、函数注释和类注释等。
Doxygen主要由以下几部分组成:
(1)标准文档:由Doxygen管理的文档,用户可以在其中添加自己
的文档。
(2)源文件:存放源代码的文件夹,以及文件。
doxygen使用方法
doxygen使用方法Doxygen是一个开源工具,用于生成软件项目的文档。
它可以解析源代码中的注释,然后生成相应的文档,包括类、函数、变量、文件等的说明,以及函数的调用图、继承图等。
本文将详细介绍Doxygen的使用方法。
一、安装Doxygen二、配置Doxygen在使用Doxygen生成文档之前,需要进行一些配置。
Doxygen的配置文件为'Doxyfile',通过修改这个文件来定制Doxygen的行为。
1.在项目根目录下,使用以下命令生成默认的配置文件:``````一些常用的参数如下:-PROJECT_NAME:项目的名称,会显示在生成的文档中。
-INPUT:需要生成文档的源文件或目录。
通常设置为代码文件所在的目录,以及一些额外的源文件。
-OUTPUT_DIRECTORY:文档的输出目录。
-RECURSIVE:是否递归处理子目录。
-FILE_PATTERNS:需要处理的源文件的模式。
可以使用通配符指定多个文件类型。
-EXCLUDE:需要排除的文件或目录。
3.保存修改后的配置文件。
4.使用以下命令来生成文档:``````5. 生成的文档将存储在指定的输出目录中。
打开'index.html'文件即可浏览生成的文档。
三、编写注释为了让Doxygen能够正确解析源代码中的注释并生成相应的文档,我们需要按照一定的规则编写注释。
下面是一些常用的注释标记和使用方法。
1.文件注释```/***...*/```2.命名空间注释```/***...namespace namespace_name//...```3.类注释```/***...*/class class_name//...```4.函数注释```/***...*/return_type function_name(param_type param_name) //...四、生成高级文档特性Doxygen还支持生成一些高级的文档特性,如调用图、继承图等。
Doxygen简介
Doxygen简介按照约定的格式注释源代码,用工具处理注释过的源代码产生文档。
通过这种方式产生文档至少有以下好处:·便于代码和文档保持同步。
·可以对文档做版本管理。
很多编程语言都有类似的文档工具,例如:Java有javadoc,Ruby有rdoc。
对于C/C++程序,我们可以用Doxygen生成文档。
本文通过为一个C++程序“谁养鱼”建立文档,介绍了怎样在Windows平台使用Doxygen。
Doxygen比较适合制作API的接口文档,CHM是这类文档的常见格式。
最新版本的Doxygen(目前是1.5.2)统一采用UTF-8作为输出文件的编码格式,但微软的CHM编译工具不支持UTF-8,这就为制作中文CHM文档带来麻烦。
本文提出了解决这个问题的方法。
1 Doxygen简介1.1 要做什么使用Doxygen生成文档,主要是两件事:1. 写一个配置文件(Doxyfile)。
一般用Doxywizard生成后,再手工修改。
2. 按照Doxygen的约定,将代码“文档化”。
然后只要执行命令:doxygen Doxyfile就可以了。
输入文件、输出目录、参数等都是在Doxyfile中配置的。
1.2 得到什么Doxygen的输出格式主要有HTML、LATEX、RTF等:· Doxygen在输出HTML文档时,可以自动准备用于制作CHM 的项目文件(.hhp)、目录文件(.hhc)和索引文件(.hhk)。
用HTML Help Workshop中的CHM编译器(hhc.exe)编译后生成CHM文件。
· Doxygen在输出LATEX文档的同时准备了转换到pdf格式的makefile。
只要系统安装了合适的TEX工具,就可以从LATEX文档生成pdf文档。
· Doxygen输出的RTF格式,已经针对Word作了优化,可以较好地转换到Word文档。
1.3 需要什么完成本文的范例需要以下工具:1. Doxygen的最新版本,可以从Doxygen的网站下载。
doxygen的使用说明
Doxygen的使用说明一、安装Doxygen所需工具经我安装测试推荐如下软件版本:注:HTML Help Workshop工具要安装在这个路径“X:\Program Files\HTML Help Workshop”(X:自己指定)。
二、附带操作为了方便运行Doxygen工具与管理,为每个模块创建一文件夹,我将此文件夹命名为Test,在Test文件夹里再创建src和doc文件夹。
Src文件夹主要存放源文件,doc文件夹主要放置Doxygen输出文件。
注:Doxygen不支持中文路径,所以路径中不要出现中文字符。
三、配置DoxygenDoxygen中有很多详细的功能,很多是不需要的,因为我们接触的一般是C++和C所以我主要介绍Doxygen关于此两个方面的用法。
相关详细的配置教程网上有很多也很容易,所以这里就不再赘述,如下文件doxygen-1.8.6-setup\Test\doc\Doxyfile是我的一个配置文件,可以直接放到Test文件下的doc文件里,用户只需打开这个配置文件就完成了Doxygen的配置。
如果只为C和C++做注释时,只需修修改如下内容即可。
首先打开Doxygen,如下图所示:单击File项选择open,选择你将Doxyfile配置文件所放的路径,找到doxyfile配置文件,然后打开,你的Doxygen就完成了基本的配置,不过有几处需要修改,下面我详细介绍下:Project name:项目名称,将作为所生成的程序文档首页标题Project version or id:文档版本号和可对应项目版本号Source code directory:存放要生成项目文档的项目源文件路径,推荐放到已建立的Src文件里Destination directory:生成文档输出路径,我设置的是输出到桌面的output文件夹里,推荐放到已建立的doc文件夹里。
单击Mode选项,如图所示:如果只用到C++则不需改动,如用到其它语言则选择相应的选项。
Doxygen使用教程(个人总结)
简介Doxygen一.什么是Doxygen?Doxygen 是一个程序的文件产生工具,可将程序中的特定批注转换成为说明文件。
通常我们在写程序时,或多或少都会写上批注,但是对于其它人而言,要直接探索程序里的批注,与打捞铁达尼号同样的辛苦.大部分有用的批注都是属于针对函式,类别等等的说明。
所以,如果能依据程序本身的结构,将批注经过处理重新整理成为一个纯粹的参考手册,对于后面利用您的程序代码的人而言将会减少许多的负担.不过,反过来说,整理文件的工作对于您来说,就是沉重的负担。
Doxygen 就是在您写批注时,稍微按照一些它所制订的规则。
接着,他就可以帮您产生出漂亮的文档了。
因此,Doxygen 的使用可分为两大部分。
首先是特定格式的批注撰写,第二便是利用Doxygen的工具来产生文档。
目前Doxygen可处理的程序语言包含:•C/C++•Java•IDL (Corba, Microsoft及KDE-DCOP类型)而可产生出来的文档格式有:•HTML•XML•LaTeX•RTF•Unix Man Page而其中还可衍生出不少其它格式。
HTML可以打包成CHM格式,而LaTeX可以透过一些工具产生出PS或是PDF文档。
二.安装Doxygen•1。
1 安装 Doxygen 1。
7。
4(Windows)•1。
2 安装 graphviz 2。
28。
0(Windows)graphviz 是一个由AT&T实验室启动的开源工具包,用于绘制DOT语言脚本描述的图形.Doxygen 使用 graphviz 自动生成类之间和文件之间的调用关系图,如不需要此功能可不安装该工具包。
•1。
3 安装 Windows Help Workshop 1。
32Doxygen 使用这个工具可以生成 CHM 格式的文档。
三.Doxygen的配置Doxygen 产生文档可以分为三个步骤.一是在程序代码中加上符合Doxygen所定义批注格式。
二是使用Doxywizard进行配置。
doxygen 设计原理
doxygen 设计原理
Doxygen是一种自动化文档生成工具,它可以从源代码中提取注释和代码结构信息,生成各种格式的文档,如HTML、PDF、LaTeX等。
其设计原理主要包括以下几个方面:
注释格式:Doxygen支持多种注释格式,如C++、Java、Python 等,可以根据不同的语言自动识别注释,并将其转换为文档。
代码结构分析:Doxygen可以分析源代码的结构,包括类、函数、变量等,可以根据代码结构生成文档的目录结构。
交叉引用:Doxygen可以自动识别代码中的函数、变量等,并在文档中进行交叉引用,方便用户查看相关信息。
多种输出格式:Doxygen支持多种输出格式,如HTML、PDF、LaTeX等,用户可以根据需要选择不同的输出格式。
自定义配置:Doxygen提供了丰富的配置选项,用户可以根据自己的需求进行配置,如文档样式、目录结构、交叉引用等。
总之,Doxygen的设计原理是基于源代码的注释和结构信息,
通过分析和转换,生成各种格式的文档,方便用户查看和使用。
doxygen的简要用法
Doxygen是基于GPL的开源项目,是一个非常优秀的文档系统,当前支持在大多数unix(包括linux),windows家族,Mac系统上运行,完全支持C++, C, Java, IDL(Corba和Microsoft 家族)语言,部分支持PHP和C#语言,输出格式包括HTML、latex、RTF、ps、PDF、压缩的HTML和unix manpage,Doxygen软件可以从这里下载,软件本身用法非常简单。
这里不做介绍,下面主要是代码中doxygen 的注释的写法的介绍。
1. 模块定义(单独显示一页)/** @defgroup 模块名模块的说明文字* @{*/… 定义的内容…/** @} */ // 模块结尾2. 分组定义(在一页内分组显示)/** @name 分组说明文字* @{*/… 定义的内容…/** @} */3. 变量、宏定义、类型定义简要说明/** 简要说明文字 */#define FLOAT float/** @brief 简要说明文字(在前面加 @brief 是标准格式) */#define MIN_UINT 0/** 分行的简要说明 \n* 这是第二行的简要说明*/int b;4. 函数说明/** 简要的函数说明文字* @param [in] param1 参数1说明* @param [out] param2 参数2说明* @return 返回值说明*/int func(int param1, int param2);/** 打开文件 \n* 文件打开成功后,必须使用 ::CloseFile 函数关闭。
* @param[in] file_name 文件名字符串* @param[in] file_mode 文件打开模式字符串,可以由以下几个模块组合而成:* – r 读取* – w 可写* – a 添加* – t 文本模式(不能与 b 联用)* – b 二进制模式(不能与 t 联用)* @return 返回文件编号* – -1 表示打开文件失败* @note 文件打开成功后,必须使用 ::CloseFile 函数关闭* @par 示例:* @code// 用文本只读方式打开文件int f = OpenFile(”d:\\test.txt”, “rt”);* @endcode* @see ::ReadFile ::WriteFile ::CloseFile* @deprecated 由于特殊的原因,这个函数可能会在将来的版本中取消。
doxygen使用简介(C,C++为代码作注释)
doxygen使⽤简介(C,C++为代码作注释)doxygen注释块doxygen注释块其实就是在C"C++注释块的基础添加⼀些额外标识, 使doxygen把它识别出来, 并将它组织到⽣成的⽂档中去。
在每个代码项中都可以有两类描述, 这两类描述将在⽂档中格式化在⼀起: ⼀种就是brief描述, 另⼀种就是detailed。
两种都是可选的,但不能同时没有。
顾名思义, 简述(brief)就是在⼀⾏内简述地描述。
⽽详细描述(detailed description)则提供更长, 更详细的⽂档。
在doxygen中, 有多种⽅法将注释块标识成详细描述:1. 你可以使⽤JavaDoc风格, 即在C风格注释块开始使⽤两个星号'*', 就像这样:2. /**3. * ... 描述 ...4. */5. 或者你使⽤Qt风格代码注释, 即在C风格注释块开始处添加⼀个叹号'!':6. /*!7. * ... 描述 ...8. */注释块中间的星号是可选, 所以将注释块写成:/*!... 描述 ...*/同样也是有效的.9. 第三种⽅法就是使⽤连续两个以上C++注释⾏所组成的注释块, ⽽每个注释⾏开始处要多写⼀个斜杠或写⼀个叹号。
像下⾏这样:10.///11./// ... 描述 ...12.///或者//!//!... 描述 ...//!13. ⼀些⼈喜欢使他们的注释块在⽂档中显得更为显⽬, 所以你也可以这么做:14./////////////////////////////////////////////////15./// ... 描述 ...16./////////////////////////////////////////////////简述同样也可以同种写法:1. ⼀种是在⼀个doxygen注释块中使⽤ . 这个命令只对当前⼀个⽂字段有效, 所以详细描述应该与之间隔⼀个空⾏.像这样:/*! "brief 这⾥是简要描述.* 这⾥仍然是简要描述.** 详细描述从这⾥开始.*/2. 如果在doxygen配置⽂件将设置成YES。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(注:这些工具放在 \\dataserver\开发二部\开发二部_公共盘\白盒测试相关\生成文档 工具 )
/** 简要说明文字 */ 变量(宏定义或类型定义)
/** …*/这是固定格式,还要注意/**这2 个“**”不能少也不能多。其他注释风 格也是这样的。
如: /** 简要说明文字 */ #define FLOAT float
“@brief ”是注释指令, “@”也 可以用”\”.
/** @brief 简要说明文字(在前面加 @brief 是标准格式) */ #define MIN_UINT 0
这三项不要选择
向导(Wizard)模式
向导(Wizard)对话框----Diagrams相关选项
这两个不选择.
全选择.通过这个GraphViz工具生 成图表: (1).类的图表. (2).协作图表. (3).包含文件图表(调用图表). (4).被包含文件图表(被调用图表). (5).整个类层次结构图表. (6).调用图表(函数,文件).
输出语言相当于程序资源,选择
Chinese。
专家(Expert)模式
专家(Expert)对话框----Project相关选项
取消选项,不然会显 示全路径:如图1.
图1
专家(Expert)模式
专家(Expert)对话框----Messages相关选项
让 doxygen 静悄悄地为你生成文 档,只有出现警告或错误时,才在 终端输出提示信息(不选择).
专家(Expert)模式
由于经过向导(Wizard)模式快速的配置,所以专家 (Expert)模式大部分也相应配置好了。
那么,下面主要配置细节问题,其他就不详细介 绍都保持默认选择就可以。
专家(Expert)模式
专家(Expert)对话框----Project相关选项
DOXYFILE_ENCODING是 Doxyfile的文本编码。如果文件中 有中文字符,可以填写GBK。把 UTF-8改为GBK。
类型:enum ,struct
注意,要以 “<” 小于号开头 ,如过不 用“<”,那这行的注释就会被Doxygen 认为是成员2的注释。
注:所有的结构体类型定义要放在枚举类型定义前面。
函数定义
指令格式: 执行符指令操作符
执行符:@或\两个。 指令操作符:param、return、retval、note、 pre、 par、
/** * 分行的简要说明 \n * 这是第二行的简要说明 */ int b;
“\n”作用是回车换行.
注:不文档化局部变量,只文档化全局变量。
枚举类型定义、结构体类型定义
枚举类型定义、结构体类型定义注释风格类似。
格式:
/** 简要说明文字 */ typedef 类型 结构体名字 {
成员1, /**< 简要说明文字 */ 成员2, /**< 简要说明文字 */ 成员3, /**< 简要说明文字 */ }结构体别名;
retval指令操作符讲解
retval:指定函数返回值说明指令操作符。(注:更前面的return有点不同.这里是返回值说明) retval格式如下:
@retval 返回值 简要说明
例:
/** *文件关闭函数 * @param file文件编号。 * @retval 0 表示成功 * @retval -1 表示失败 */ int CloseFile(int file);
附带操作
为了方便运行Doxygen工具与管理.为每个模块创
建一文件夹(如:“TEST”),在TEST文件夹里再创建src、
doc文件夹。Src文件夹存放源文件,doc文件夹存放
Doxygen输出文件。顺便把doxygenWD.bat和Doxygen
配置文件“Doxyfile” 拷贝到doc文件夹下,如果要生
note 指令操作符讲解
note:指定函数注意项事或重要的注解指令操作符。
note格式如下: @note 简要说明
例: /** *打开文件函数 *@Param [in] name 文件名 *@Param [in] “rb” 打开模式 *@return 返回文件编号 *- -1表示打开文件失败 *@note 文件打开成功后,必须使用 CloseFile 函数关闭 */ int OpenFile(U8* file_name, U8* file_mode);
、
这个就是要放置iconv、 fr工具里文 件的路径.(这个路径随自己编写)
安装HTML Help Workshop工具
1.双击运行 htmlhelp.exe; 2.安装软件提示语操作即可; 3. HTML Help Workshop安装完成;
注: HTML Help Workshop工具要安装在这个路径“X:\Program Files\HTML Help Workshop”(X:自己指定).
如果选上,就会连子文件夹的 文件一起生成文当。没选,就 只会生成本文件夹的文件文档.
这里填入生成文档文件输出 路径,这里只填文件夹名字就 可以了.为了大家工作方便, 就规定统一写output文件夹
向导(Wizard)模式
向导(Wizard)对话框----Mode相关选项
选择这个,只生成文档re:指定函数前置条件指令操作符 pre格式如下:
@pre 简要说明
例: /** *文件关闭函数 * @param file文件编号。 * @retval 0 表示成功 * @retval -1 表示失败 * @pre file 变量必须使用OpenFile 返回值 */ int CloseFile(int file);
par指令操作符讲解
par:指定扩展性说明指令操作符讲。(它一般跟code、endcode一起使用 ) par格式如下:
@par 扩展名字
例: /** * 打开文件函数 * @Param [in] name 文件名 * @Param [in] “rb” 打开模式 * @return 返回文件编号 * - -1表示打开文件失败 * @par 示例: * @code //用文本只读方式打开文 int f = OpenFile(”c:\\test.txt”, “rb”); * @endcode */ int OpenFile(U8* file_name, U8* file_mode);
安装Doxygen工具
1.先解压doxygen.rar; 2.双击运行 doxygen-1.5.2-setup.exe; 3.安装软件提示语操作即可; 4.把create_chm.bat、html_foot拷贝到Doxygen安装目录
的bin文件夹里. 5.把 Doxygen安装目录的bin路径放在系统环境变量里; 6.Doxygen安装完成;
图2
选择GENERATE_HTMLHELP后, Doxygen会准备生成chm文件需要的
项目文件、目录文件和索引文件。
专家(Expert)模式
专家(Expert)对话框----Dot相关选项
可以选上UML_LOOK、 CALL_GRAPH和CALLER_GRAPH。 CALL_GRAPH是本函数调用其它函 数的示意图.效果如:图3.
图3
Doxygen注释风格
Doxygen指令目的为了生成更丰富与可读性更强的 文档。所以总结5类常用的注释风格说明。
●变量、宏定义、类型定义。 ●枚举类型定义、结构体类型定义类似。 ●函数定义。 ●模块定义(单独显示一页 )。 ●分组定义(在一页内分组显示)。
变量、宏定义、类型定义简要说明
变量、宏定义、类型定义注释风格类似。 格式:
成文档就双击doxygenWD.bat即可。(模块的目录结构
如下 )
注:Doxygen不支持 中问路径,不要创建 中文路径.
TEST |---- src || | |---- test.c | |---- test.h | |---- doc || | |---- Doxyfile | |---- doxygenWD.bat
例:
/** *文件关闭函数 * @param file文件编号。 */ int CloseFile(int file);
Doxygen生成效果
return 指令操作符讲解
return:指定函数返回说明指令操作符。 return格式如下:
@return 简要说明
例: /** * 写入文件 * @Param [in] file 文件编号 * @Param [in] buffer 存放将要写入的内容 * @Param [in] len写入长度 * @return 返回写入的长度 * - -1 表示写入失败 */ int WriteFile(int file, const char* buffer, int len);
目录
使用Doxygen的目的. 安装Doxygen所需工具. 配置Doxygen Doxygen注释风格
使用Doxygen的目的
生成模块文档,方便以后维护模块代码。 提高代码可读性。 提高项目代码的管理。 省略了自己写readme文件(或文档)。
安装Doxygen所需工具
选择这个,会生成全部实体.因 此,要选择这个. 选择这个,把源文件内容导入 到项目文档里.(建议选择)
选择项目文档输出格式,测试C 语言,就选择个.
向导(Wizard)模式
向导(Wizard)对话框----Output相关选项
生成普通模式的HTML 生成文件列表格的 HTML
生成chm文件格式的 HTML,因此,就选这个. 附带查找功能,一般不选择. 这项没用到,因此把它选择 取消.