一、注释语法
-
简单注释
单行注释: /// 多行注释: /**
-
文件注释
/** * @file test.h * @brief 测试doxygen * @details 详细描述 * 详细描述2 * @author ... * @email 油箱 * @version v1.1.1 * @date 2020-01-10 * @license 版权 */
命名空间注释
-
类定义注释
/** * @brief 测试命名空间 */
-
变量/宏定义注释
int id_; ///< 用户ID std::string name_; ///< 用户名 /// 用户薪水 double salary_;
-
函数注释
/** * @brief 测试函数 * * @param[in] in_argv 第一个参数 * @return 成功与否 * @retval 1 成功 * @retval 0 失败 * @attention 注意释放内存 * @warning 测试警告 * @execption 异常 */ int func_test(const std::string& in_argv){ return 0; }
-
其他
命令 说明 @see 参考 @class 引用类 @var 引用变量 @enum 引用枚举 @code 代码块开始 @endcode 代码块结束 @bug 缺陷 @todo TODO @example 使用例子说明 @remarks 备注说明 @pre 函数前置条件 @deprecated 函数过失说明 完整示例
/**
* @file test.h
* @brief 测试doxygen
* @details 详细描述
* 详细描述2
* @author ...
* @email 油箱
* @version v1.1.1
* @date 2020-01-10
* @license 版权
*/
#pragma once
#include <string>
/**
* @brief 测试命名空间
*/
namespace CppNamespace
{
/// 宏定义
#define BUFSIZE 1000
/// 测试枚举
enum CppEnum {
SALARY_Millions, ///< 枚举1
SALARY_Million_OF_Million ///< 枚举2
};
/**
* @brief 测试结构体声明
*/
struct CppStruct{
int id_; ///< 用户ID
std::string name_; ///< 用户名
/// 用户薪水
double salary_;
}
/**
* @brief 测试类
* 主要用来演示doxygen类的注释方式
*/
class CppClass
{
public:
CppClass() {}
~CppClass() {}
public:
/**
* @brief 测试函数
*
* @param[in] in_argv 第一个参数
* @return 成功与否
* @retval 1 成功
* @retval 0 失败
* @attention 注意释放内存
* @warning 测试警告
* @execption 异常
*/
int func_test(const std::string& in_argv){
return 0;
}
private:
};
};
二、生成html文档
-
安装doxygen
// ubuntu sudo apt install doxygen sudo apt install doxygen-gui sudo apt install graphviz-doc
-
使用doxywizard工具生成Doxyfile
// 运行doxywizard doxywizard
2.1 填写基本信息
working directory: 工作目录 project name: 工程名称 source code: 源码路径,勾选递归遍历 destination directory: html 存储路径
填写信息2.2 选择Run 标签,执行Run doxygen
Run doxygen2.3 保存Doxyfile
菜单->File->Save
-
生成结果目录
├── html │ ├── html │ └── latex ├── inc │ └── test.h ├── readme.md ├── src │ └── test.cpp
查看文档

-
也可以使用docker部署nginx,查看文档
5.1. 下载镜像
docker pull nginx
5.2. 创建nginx容器
// 映射本地html的路径到容器中/var/html路径 docker run --name nginx -d -p 80:80 -v /data:/var/html/ nginx // 或者不映射,使用docker cp 复制到容器中也可以
5.3. 修改nginx配置文件
docker exec -it nginx apt update apt install vim vim /etc/nginx/conf.d/default.conf // 修改如下内容 location / { root /var/html; index index.html index.htm; } // 即访问http://localhost:80/ nginx 会去查找/var/html/index.html
5.4. reload nginx
nginx -s reload
5.5. 访问文档
http://localhost/