Linux Doxygen快速生成文档

此前写过一篇编写Doxygen格式的注释以用于生成文档,点击以查阅, Doxygen常用语法与字段记录,但是当时用的windows桌面版的doxygen,最近使用ubuntu编写代码想直接使用doxygen生成,故写下此博客

Doxygen

Doxygen是一个用于生成软件文档的工具,它可以从代码中提取注释并根据这些注释自动生成文档。这些注释可以是特殊格式的注释,比如C、C++、Java等语言中的特定格式,也可以是Markdown格式的注释。
以下是一些Doxygen的主要特点和用途:

  1. 自动生成文档:Doxygen可以从源代码中提取注释,并生成各种格式的文档,包括HTML、PDF、LaTeX等。这样可以轻松地为你的项目生成专业的文档。
  2. 支持多种编程语言:Doxygen支持多种编程语言,包括C、C++、Java、Python等主流编程语言。你可以在不同的项目中使用Doxygen来生成文档。
  3. 丰富的文档格式:Doxygen支持多种文档格式,包括类图、调用图、文件列表等。它还支持跳转到定义、引用和继承等功能,使生成的文档更加详细和易于导航。
  4. 可定制性强:Doxygen提供了丰富的配置选项,可以根据你的需求定制文档的样式和内容。你可以通过配置文件或命令行选项来控制生成的文档。
  5. 支持多种输出格式:Doxygen可以生成多种格式的输出文档,包括HTML、PDF、LaTeX等。这使得你可以选择最适合你项目的文档格式。我们在接下来的课程当中,主要使用它来了解第三方库的使用。

Doxygen安装

在 Ubuntu 系统中,执行下面命令安装 doxygen 和 graphviz 软件包。

sudo apt install graphviz    # 用于生成代码关系图
sudo apt install doxygen

使用示例

进入工程目录,执行下面命令生成配置文件

doxygen -g Doxygen.config

修改配置文件vim Doxygen.config,找到如下字段修改为YES

对于美观有要求可以自行查阅相关资料,修改一些字段

EXTRACT_ALL            = YES
HAVE_DOT               = YES
UML_LOOK               = YES
RECURSIVE              = YES

根据代码生成文档

doxygen Doxygen.config

生成效果展示

image-20240616161835187

image-20240616161851720

image-20240616161935095

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/40024.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

(四)opengl函数加载和错误处理

#include <glad/glad.h>//glad必须在glfw头文件之前包含 #include <GLFW/glfw3.h> #include <iostream>void frameBufferSizeCallbakc(GLFWwindow* window, int width, int height) {glViewport(0, 0, width, height);std::cout << width << &qu…

PHP多线程爬虫:高效解析电商网页内容

如何使用php多线程编写高效的网页爬虫 随着互联网的发展和数据的不断增长&#xff0c;网页爬虫成为了一种非常重要的工具。通过网页爬虫&#xff0c;我们可以自动地从各种网站上获取大量的数据&#xff0c;并进行进一步的处理和分析。而PHP作为一种广泛使用的编程语言&#xf…

Android高级面试_6_性能优化

Android 高级面试-7&#xff1a;网络相关的三方库和网络协议等 1、网络框架 问题&#xff1a;HttpUrlConnection, HttpClient, Volley 和 OkHttp 的区别&#xff1f; HttpUrlConnection 的基本使用方式如下&#xff1a; URL url new URL("http://www.baidu.com")…

SwanLinkOS首批实现与HarmonyOS NEXT互联互通,软通动力子公司鸿湖万联助力鸿蒙生态统一互联

在刚刚落下帷幕的华为开发者大会2024上&#xff0c;伴随全场景智能操作系统HarmonyOS Next的盛大发布&#xff0c;作为基于OpenHarmony的同根同源系统生态&#xff0c;软通动力子公司鸿湖万联全域智能操作系统SwanLinkOS首批实现与HarmonyOS NEXT互联互通&#xff0c;率先攻克基…

大模型与机器人精彩碰撞-7月5日晚上八点不见不散!

在瞬息万变的科技时代&#xff0c;新兴人工智能和机器人技术的结合正在引领新一轮的创新浪潮。你是否想成为未来科技的领航者&#xff1f;你是否想了解最前沿的AI与机器人技术&#xff1f;行麦科技重磅推出的“AIGC时代的生存法则”AI系列课&#xff0c;将为你揭开大模型与机器…

创建kset

1、kset介绍 2、相关结构体和api介绍 2.1 struct kset 2.2 kset_create_and_add kset_create_and_addkset_createkset_registerkobject_add_internalkobject_add_internal2.3 kset_unregister kset_unregisterkobject_delkobject_put3、实验操作 #include<linux/module.…

【leetcode64-69二分查找、70-74栈、75-77堆】

二分查找[64-69] 时间复杂度O(log n)&#xff0c;要想到二分排序 35.搜索插入位置 class Solution:def searchInsert(self, nums: List[int], target: int) -> int:left 0right len(nums)-1while left < right: #左闭右闭mid (leftright)//2if nums[mid] < target…

【算法训练记录——Day39】

Day39——动态规划Ⅱ 1.leetcode_62不同路径2.leetcode_63不同路径Ⅱ3.leetcode_343整数拆分4.leetcode_96不同的二叉树搜索 1.leetcode_62不同路径 思路&#xff1a;经典的动态规划问题&#xff1a; dp[i][j]表示到达&#xff08;i&#xff0c;j&#xff09;位置时的不同路径…

运维锅总浅析云原生DevOps工具

本文从Tekton与Kubevela、Jenkins、GitLab CI的区别与联系对常见的云原生DevOps工具进行对比分析&#xff0c;最后给出DevOps工具选型思路。希望对您有所帮助&#xff01; 一、DevOps简介 DevOps是一种结合了软件开发&#xff08;Development&#xff09;和IT运维&#xff08…

怎么在windows、linux、mac上安装pnpm呢?

怎么在windows、linux、mac上安装pnpm呢&#xff1f; 前言 如果您不使用独立脚本或 pnpm/exe 来安装 pnpm&#xff0c;则需要在系统上安装 Node.js&#xff08;至少 v16.14&#xff09;。 原址&#xff1a;https://pnpm.io/zh/installation 使用独立脚本安装 即使没有安装…

登录功能和校验

基础版 controller package com.web.management.controller;import com.web.management.pojo.Emp; import com.web.management.pojo.Result; import com.web.management.service.EmpService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.anno…

Ignis 应用: 社交 + 游戏 + 工业4.0,Ignis 构建Web3生态圈

引言 在数字经济快速发展的今天&#xff0c;Web3技术为我们带来了前所未有的变革。作为Ardor平台的主要子链&#xff0c;Ignis公链在推动Web3生态系统建设中扮演了重要角色。本文将通过介绍Vessel Chain、Mythical Beings和Bridge Champ等应用&#xff0c;探讨Ignis公链如何通…

GB/T 43566-2023中小学人造草面层足球场地检测

人造草面层是指以类似天然草的合成纤维经机械编织固定于底布上形成人造草&#xff0c;至现场粘接并与弹性垫层等必要的其他材料组装成整体的面层。 GB/T 43566-2023中小学人造草面层足球场地检测项目&#xff1a; 测试项目 测试方法 人造草物理性能 GB/T 20394 人造草有害…

html+css+js文章模板

图片 源代码在图片后面&#xff0c;点赞加关注&#xff0c;谢谢&#x1f604; 源代码 <!DOCTYPE html> <html lang"zh"> <head> <meta charset"UTF-8"> <meta name"viewport" content"widthdevice-width,…

redis的数据类型对应的使用场景

Redis提供了多种数据类型&#xff0c;每种数据类型都有其特定的适用场景。以下是Redis主要数据类型及其典型应用场景&#xff1a;1. 字符串(String) 应用场景&#xff1a;适用于存储简单的键值对数据&#xff0c;如用户基本信息、计数器&#xff08;如网页访问次数&…

停车场车牌识别计费系统,用Python如何实现?

关注星标&#xff0c;每天学习Python新技能 前段时间练习过的一个小项目&#xff0c;今天再看看&#xff0c;记录一下~ 项目结构 说明&#xff1a; datefile文件夹&#xff1a;保存车辆信息表的xlsx文件 file文件夹&#xff1a;保存图片文件夹。ic_launcher.jpg是窗体的右上角…

周下载量20万的npm包---store

https://www.npmjs.com/package/store <script setup> import { onMounted } from vue import store from storeonMounted(() > {store.set(user, { name: xutongbao })let user store.get(user)console.log(user) //对象console.log(localStorage.getItem(user)) //…

基于深度学习的换头特效

基于深度学习的换头特效是一项计算机视觉和图像处理技术&#xff0c;旨在将一个人的脸部特征无缝替换到另一个人的头部&#xff0c;同时保持自然和真实的视觉效果。这项技术广泛应用于电影制作、虚拟现实、娱乐和社交媒体等领域。以下是关于这一领域的系统介绍&#xff1a; 1.…

linux nfs的使用

版权声明&#xff1a;来自百度AI&#xff0c;此处记录是方便日后查看&#xff0c;无任何商业用途 linux网络文件共享服务之nfs NFS&#xff08;Network File System&#xff09;是一种允许计算机用户或者操作系统通过网络以类似本地的方式访问文件的协议。以下是一个简单的NF…

CesiumJS【Basic】- #056 绘制纹理填充多边形(Entity方式)-使用shader

文章目录 绘制纹理填充多边形(Entity方式)-使用shader1 目标2 代码2.1 main.ts绘制纹理填充多边形(Entity方式)-使用shader 1 目标 使用Entity方式绘制绘制纹理填充多边形 - 使用shader 2 代码 2.1 main.ts import * as Cesium from cesium;const viewer = new Cesium…