当前位置: 首页 > article >正文

快速阅读源码

Doxygen 轻松生成包含类图、调用关系图的 HTML 和 PDF 文档,
Graphviz 可以用来生成类图、调用图

sudo apt-get install doxygen graphviz
brew install doxygen graphviz#HTML 文档:
open docs/html/index.html

一、Doxyfile配置: Doxyfile 文件

doxygen Doxyfile

PROJECT_NAME = "My Project"
# 指定源代码目录
INPUT = .
INPUT_ENCODING = UTF-8
FILE_PATTERNS=*.c,*.cpp,*.cxx,*.h,*.hpp
OUTPUT_DIRECTORY = ./docs
OUTPUT_LANGUAGE = Chinese# 细节
RECURSIVE = YES
HAVE_DOT  = YES
EXTRACT_ALL = YES
EXTRACT_PRIVATE = YES
EXTRACT_STATIC  = YES
CALL_GRAPH = YES
OPTIMIZE_OUTPUT_FOR_C = YES
GRAPHICAL_HIERARCHY=YES
SHOW_USED_FILES=YES
SHOW_FILES=YES
INLINE_INFO=YES
SOURCE_BROWER=YES
REFERENCED_BY_RELATION = YES
REFERENCED_RELATION = YES
REFERENCED_LINK_SOURCE = YES
GENERATE_TREEVIEW=ALL
GENERATE_HTML = YES
GENERATE_LATEX = NO

二、使用 CMake 自动生成文档

运行 make doc 即可生成文档

find_package(Doxygen REQUIRED)set(DOXYGEN_INPUT_DIR "${CMAKE_SOURCE_DIR}/src")
set(DOXYGEN_OUTPUT_DIR "${CMAKE_BINARY_DIR}/docs")set(DOXYGEN_CONFIG_FILE "${CMAKE_BINARY_DIR}/Doxyfile")add_custom_target(docCOMMAND doxygen ${DOXYGEN_CONFIG_FILE}WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}COMMENT "Generating API documentation with Doxygen"VERBATIM)
http://www.lryc.cn/news/2395007.html

相关文章:

  • linux创建虚拟网卡和配置多ip
  • Java Class类文件结构
  • AI问答-Vue3+TS:reactive创建一个响应式数组,用一个新的数组对象来替换它,同时保持响应性
  • quasar electron mode如何打包无边框桌面应用程序
  • 【HW系列】—Windows日志与Linux日志分析
  • VIN码识别解析接口如何用C#进行调用?
  • 动态规划之网格图模型(一)
  • PCB设计实践(三十)地平面完整性
  • x86_64-apple-ios-simulator 错误
  • 使用ray扩展python应用之流式处理应用
  • IP证书的作用与申请全解析:从安全验证到部署实践
  • 第四十一天打卡
  • C++中指针常量和常量指针的区别
  • 深入解析向量数据库:基本原理与主流实现
  • VectorNet:自动驾驶中的向量魔法
  • PostgreSQL性能监控双雄:深入解析pg_stat_statements与pg_statsinfo
  • 【Linux系列】Linux/Unix 系统中的 CPU 使用率
  • C++语法系列之模板进阶
  • 基于图神经网络的自然语言处理:融合LangGraph与大型概念模型的情感分析实践
  • R 语言科研绘图 --- 热力图-汇总
  • 基于DFT码本的波束方向图生成MATLAB实现
  • vBulletin未认证API方法调用漏洞(CVE-2025-48827)
  • 解决访问网站提示“405 很抱歉,由于您访问的URL有可能对网站造成安全威胁,您的访问被阻断”问题
  • FeignClient发送https请求时的证书验证原理分析
  • UDP组播套接字与URI/URL/URN技术详解
  • 机器学习中的关键术语及其含义
  • 点云识别模型汇总整理
  • 项目更改权限后都被git标记为改变,怎么去除
  • 网络编程1_网络编程引入
  • 【Day38】