doxygen生成注释文档
Doxygen
从源码中提取注释自动生成文档,可以是HTML网页形式,也可以最终生成PDF
vscode插件
在拓展选项搜索下载插件:Doxygen Documentation Generator
设置
在File--Preferences--Settings界面的Extensions选项找到Doxygen Documentaion...的设置页。可以设置邮箱、copyright、显示格式等等
使用
在文件开头输入 /**
然后回车,就会出现关于文件说明的格式
在函数上方输入/**
然后回车,就会出现函数的注释补全
doxygen生成文档时,默认读取的注释格式一般为两种:
/**
* @file xxx.cpp
* @brief xxxx相关函数实现
* @date 2022-07-04
*/
or
/**
* @brief 函数的简介
* @param hTmCC 参数
* @return int 返回值int型
*/
int func_xxx(xxx hTmCC){
return xx;
}
///这是一条注释
.....
注意,这两种格式的注释,是指解释下面一行的代码,不是同一行和上一行。
Doxygen工具
安装
可参考官网方法:https://doxygen.nl/download.html
Linux
sudo apt install doxygen
sudo apt install doxygen-gui
#然后执行命令
doxywizard
#即可打开工具
Windows
进入官网下载页:https://doxygen.nl/download.html
找到Windows64版本的xxxxsetup.exe安装程序
下载完安装
使用
step1设置:设置工作路径,生成文档时会做剔除字符串(避免显示绝对路径)
2:
3:
4:
在指定的工程输出目录,就会看到,html目录和latex目录(如果勾选了对应选项)
在html目录里找到index.html既可以在浏览器打开,浏览文档
MikTex工具
这个工具可以将latex目录下生成的东西转换成PDF文件
安装
参考官网的下载方式:
https://miktex.org/download
Windows
在下载页:https://miktex.org/download下载安装包,安装
Linux-Ubuntu
#a. Register GPG key
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys D6BC243565B2087BC3F897C9277A7293F59E4889
#b. Register installation source
#Ubuntu 20.04 LTS (Focal Fossa):
echo "deb http://miktex.org/download/ubuntu focal universe" | sudo tee /etc/apt/sources.list.d/miktex.list
#Ubuntu 18.04 LTS (Bionic Beaver):
echo "deb http://miktex.org/download/ubuntu bionic universe" | sudo tee /etc/apt/sources.list.d/miktex.list
#Ubuntu 16.04 LTS (Xenial Xerus):
echo "deb http://miktex.org/download/ubuntu xenial universe" | sudo tee /etc/apt/sources.list.d/miktex.list
#c. Install MiKTeX
sudo apt-get update
sudo apt-get install mikte
#点击MiKTeX Console图标,打开设置项:点击finish xxxx setup(是否分用户)
#软件重启之后
#如果需要更新,点击界面上的更新按钮
使用
Windows
双击执行latex文件夹里的make.bat
首次执行会下载很多拓展,全部点安装即可
然后会在当前目录生成refman.pdf
Linux
进入到latex目录,执行命令
make
首次执行会下载很多拓展,全部点安装即可
然后会在当前目录生成refman.pdf
一些需要注意的设置项
STRIP_FROM_PATH =
如果完全路径名称设置为YES,那么 STRIP_FROM_PATH标签可以被用来剔除路径中用户定义(隐私?)部分。只要路径名左端含有某个指定的字符串,剔除就会起作用。该标签可被用来显示文件列表中的相对路径。如果留空,那么doxygen的运行路径将被用来作为剔除字符串。