首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在哪里放置doxygen注释块用于内部库 - 在H或CPP文件中?

在H或CPP文件中,您可以使用doxygen注释块来为内部库提供文档。Doxygen是一个用于自动生成源代码文档的工具,它可以帮助您更好地组织和维护代码注释。

在C++代码中,您可以使用以下格式的doxygen注释块:

代码语言:txt
复制
/**
 * 这里是注释内容
 */

在H文件中,您可以使用以下格式的doxygen注释块:

代码语言:txt
复制
/*!
 * 这里是注释内容
 */

在这些注释块中,您可以描述内部库的功能、用法和实现细节。这将有助于其他开发人员更好地理解和使用您的代码。

推荐的腾讯云相关产品和产品介绍链接地址:

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

doxygen教程_genedoc教程

规范 规范综述  简要的说,Doxygen注释其实就是C、C++注释的基础添加一些额外标识,使Doxygen把它识别出来, 并将它组织到生成的文档中去。  ...Doxygen,主要通过以下方法将注释标识成详细(detailed)描述:  JavaDoc风格,C风格注释开始使用两个星号’*’: /** * ......要避免注释每个member前放置\ingroup命令,可以将member用@{和@}封装起来。...@{@}标记可以放置group的注释,也可以一个独立的注释  使用这些group的标记符号groups也可以嵌套。  如果多次使用一个group标签,将会出错。...它被设计为实现一个“lazy”的group定义方法:可以.h文件中使用高优先级来定义结构,.cpp文件中使用\weakgroup这样不会重复.h文件的层次结构。

4.4K30

面向 C++ 的现代 CMake 教程(四)

/img/Figure_10.1_B17205.jpg) 图 10.1 – 使用 Doxygen 生成的类参考 你可以成员函数文档中看到的额外描述是通过文件添加适当注释来实现的: chapter...用双星号 /** 打开注释是非常重要的。可以 Doxygen 的 docblocks 描述中找到更多信息(请参阅 进一步阅读 部分的链接)。...将在系统级include 目录的项目特定子目录安装两个头文件——即calc.h和nested/calc_extended.h。...然而,目标导出文件安装之前生成的,构建阶段,此时我们不知道安装的工件将去哪里。...我们构建项目之后,我们可以构建树运行cpack二进制文件来生成实际的包: cpack [] 从技术上讲,CPack 能够读取放置在当前工作目录的所有配置文件选项,但你也可以选择从命令行覆盖这些设置

32700

面向 C++ 的现代 CMake 教程(五)

为了有一个更复杂的问题来解决,这个项目将同时构建一个和一个可执行文件。该将提供内部业务逻辑,并作为 CMake 包供其他项目使用。...我们书中提到了几次对象,但并没有真正介绍这个概念。现在让我们来做这件事。 对象 对象用于将多个源文件组合到一个单一的逻辑目标,并在构建过程编译成(.o)目标文件。...它还通过PUBLIC_HEADER属性引用calc.h文件,该属性可以配置的包含目录中找到(感谢生成器表达式提供特定模式的适当路径——构建安装)。...一个文件将覆盖: chapter-12/01-full-project/test/calc/calc_test.cpp #include "calc/calc.h" #include 与,并将结果(truefalse)存储变量

7700

Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE)

从源代码生成文档 Doxygen 是从带注释的 C++ 源代码生成文档的事实上的标准工具,但它也支持其他流行的编程语言,例如 C、Objective-C、C#、PHP、Java、Python、IDL(...Doxygen 也支持硬件描述语言VHDL。 Doxygen 可以通过三种方式实现: 它可以从一组文档源文件中生成在线文档浏览器(HTML)和/离线参考手册(\mbox{\LaTeX})。...可以配置 doxygen 以从未记录的源文件中提取代码结构。这对于大型源代码分发快速找到您的方式非常有用。...还可以使用 doxygen 创建普通文档(就像我为 doxygen 用户手册和网站所做的那样)。 Doxygen Mac OS X 和 Linux 下开发的,但设置为高度便携。...因此,它也可以大多数其他 Unix 风格上运行。此外,还有适用于 Windows 的可执行文件

2.4K20

老外的嵌入式编程规范(值得一看)

之外,始终使用stdint.h标准声明的类型。...for negative check */ 对于注释,总是使用/* comment */,即使是单行注释 文件总是包含带有extern关键字的c++检查 每个函数都必须包含doxygen-enabled...uint8_t* t = (uint8_t*)var_width_diff_type 始终尊重项目已经使用的代码风格 03 注释相关的规则 ---- 不允许以//开头的注释。...每个文件(头文件文件)必须包含许可证(开始注释包括单个星号,因为doxygen必须忽略这个) 使用与项目/已经使用的相同的许可证 /** * \file template.h....c文件 .c文件应该首先包含相应的.h文件,然后是其他文件,除非另有明确的必要 文件不包含模块私有声明 头文件示例(示例没有license) /* License comes here */

1.7K20

值得一看:老外的嵌入式编程规范

之外,始终使用stdint.h标准声明的类型。...for negative check */ 对于注释,总是使用/* comment */,即使是单行注释 文件总是包含带有extern关键字的c++检查 每个函数都必须包含doxygen-enabled...uint8_t* t = (uint8_t*)var_width_diff_type 始终尊重项目已经使用的代码风格 03 注释相关的规则 ---- 不允许以//开头的注释。...每个文件(头文件文件)必须包含许可证(开始注释包括单个星号,因为doxygen必须忽略这个) 使用与项目/已经使用的相同的许可证 /** * \file template.h....c文件 .c文件应该首先包含相应的.h文件,然后是其他文件,除非另有明确的必要 文件不包含模块私有声明 头文件示例(示例没有license) /* License comes here */

1.1K40

这才是理想的 C 语言编程规范

之外,始终使用stdint.h标准声明的类型。...for negative check */ 对于注释,总是使用/* comment */,即使是单行注释 文件总是包含带有extern关键字的c++检查 每个函数都必须包含doxygen-enabled...uint8_t* t = (uint8_t*)var_width_diff_type 始终尊重项目已经使用的代码风格 03 注释相关的规则 不允许以//开头的注释。...每个文件(头文件文件)必须包含许可证(开始注释包括单个星号,因为doxygen必须忽略这个) 使用与项目/已经使用的相同的许可证 /** * \file template.h....c文件 .c文件应该首先包含相应的.h文件,然后是其他文件,除非另有明确的必要 文件不包含模块私有声明 头文件示例(示例没有license) /* License comes here */

2.3K20

C编程规范整理

内联那些包含循环switch语句的函数是得不偿失的。如果一个inline函数会在多个源文件中被用到,那么必须把它定义**.h文件**。...包含文件的名称及次序:C、C++、其他的.h、项目内的.h。 编写短小函数。长函数有时是恰当的,因此对于函数长度并没有严格限制。...避免注释中使用缩写,除非是业界通用子系统内标准化的缩写。 注释应考虑程序易读及外观排版的因紊,使用的语言若是、英兼有的,建议多使用中文,除非能用非常流利准确的英文表达。...对于有外籍员工的,由产品确定注释语言。 文件头、函数头、全局常量变量、类型定义的注释格式采用工具可识别的格式(如doxygen)。 ?...相对独立的程序之间、变量说明之后必须加空行。 多个短语句(包括赋值语句)不允许写在同一行内,即一行只写一条语句。 使用断言记录内部假设。不能用断言来检查运行时错误。

81620

文档代码同源

我们的思路就是,利用Doxygen工具,将代码和文档的开发变为同步过程。由于文档含在代码里,也意味着Doxygen的文档也是文本,版本的管理下,能精确的看到每一个比特的修改。...(后面有文章做一个的Doxygen介绍。)这里简单的介绍一下DoxygenDoxygen 是一个程序的文档产生工具,可将程序的特定注释转换成为说明文件。比如说对于以下这段注释: ?...以上经过Doxygen抽取编译后,会生成一个综合性文档,可在里面查到: ? 即使我们不用doxygen编译,写在代码里的注释,也是不影响我们理解的。只是编译后,查阅起来更方便。...Doxygen支持自由页面,可以写一个Python的小工具,将excel的需求表转化为 txt的文本文件,被doxygen所识别。 ? ?...首先,公司内部要有完善的版本控制机制。任何代码,全局只有一份。对于svn的版本、git的版本,有不同的办法。(svn可以使用externals属性,保持全局唯一的文件

50240

开心档之C++ 基本语法

编译 & 执行 C++ 程序 接下来让我们看看如何把源代码保存在一个文件,以及如何编译并运行它。下面是简单的步骤: 打开一个文本编辑器,添加上述代码。 保存文件为 hello.cpp。...打开命令提示符,进入到保存文件所在的目录。 键入 'g++ hello.cpp ',输入回车,编译代码。如果代码没有错误,命令提示符会跳到下一行,并生成 a.out 可执行文件。...$ g++ hello.cpp $ ./a.out Hello World 请确保您的路径已包含 g++ 编译器,并确保包含源文件 hello.cpp 的目录运行它。...C++ 的分号 & 语句 C++ ,分号是语句结束符。也就是说,每个语句必须以分号结束。它表明一个逻辑实体的结束。...C++ 的空格 只包含空格的行,被称为空白行,可能带有注释,C++ 编译器会完全忽略它。 C++ ,空格用于描述空白符、制表符、换行符和注释

50910

开心档之C++ 基本语法

编译 & 执行 C++ 程序 接下来让我们看看如何把源代码保存在一个文件,以及如何编译并运行它。下面是简单的步骤: 打开一个文本编辑器,添加上述代码。 保存文件为 hello.cpp。...打开命令提示符,进入到保存文件所在的目录。 键入 'g++ hello.cpp ',输入回车,编译代码。如果代码没有错误,命令提示符会跳到下一行,并生成 a.out 可执行文件。...$ g++ hello.cpp $ ./a.out Hello World 请确保您的路径已包含 g++ 编译器,并确保包含源文件 hello.cpp 的目录运行它。...C++ 的分号 & 语句 C++ ,分号是语句结束符。也就是说,每个语句必须以分号结束。它表明一个逻辑实体的结束。...C++ 的空格 只包含空格的行,被称为空白行,可能带有注释,C++ 编译器会完全忽略它。 C++ ,空格用于描述空白符、制表符、换行符和注释

49320

【Android 音视频开发:FFmpeg音视频编解码篇】二、Android 引入FFmpeg

i. native-lib.cpp :是一个 C++ 接口文件 MainActivity 声明的外部方法将在这里得到实现。...说白了,就是告诉编译器: - 编译的目标是谁 - 依赖的源文件哪里找 - 依赖的 `系统第三方` 的 `动态静态` 哪里找。...将 FFmpeg so 放到对应的 CPU 架构目录 上一篇文章,我们编译的 FFmpeg so 的 CPU 架构为 armv7-a,所以,我们需要把所有的 so 放置到 armeabi-v7a...添加、链接 FFmpeg so 上面已经把 so 和 头文件 放置到对应的目录中了,但是编译器是不会把它们编译、链接、并打包到 Apk 的,我们还需要在 CMakeLists.txt 显性的把相关的... native-lib.cpp 添加对应的 JNI 层方法 #include #include #include extern "C" {

2.5K10

qmake手册(Qt5.9.3)

例如,HEADERS和SOURCES变量的值列表用于告诉qmake关于项目文件所在目录的头文件和源文件。 变量也可以在内部用于存储临时值列表,现有的值列表可以用新值覆盖扩展。...DESTDIR 将放置可执行文件二进制文件的目录。 FORMS 由用户界面编译器(uic)处理的UI文件列表。 HEADERS 构建项目时使用的头文件(.h)的文件名列表。...LIBS变量附加-framework选项和框架的名称来链接: LIBS + = -framework TheFramework 创建框架 任何给定的项目都可以进行配置,以便将生成的文件放置框架...使用这个选项,你可能会触发项目文件的条件来添加使用预编译头文件的设置。例如: precompile_header:!...这个变量的值通常由qmake内部处理,很少需要修改。 MSVCPROJ_ * 这些变量由qmake内部处理,不应该被修改利用。 MOC_DIR 指定应放置所有中间moc文件的目录。

5.3K20

CMake学习笔记合集

内部构建和外部构建 上述例子就是内部构建,他生产的临时文件特别多,不方便清理 外部构建,就会把生成的临时文件放在build目录下,不会对源文件有任何影响强烈使用外部构建方式 外部构建方式举例 //例子目录...添加一个子目录 doc,用来放置这个工程的文档 hello.txt 工程目录添加文本文件 COPYRIGHT, README 工程目录添加一个 runhello.sh 脚本,用来调用 hello...2,安装头文件与共享。 静态和动态的区别 静态的扩展名一般为“.a”“.lib”;动态的扩展名一般为“.so”“.dll”。...的内容 #ifndef HELLO_H #define Hello_H void HelloFunc(); #endif hello.cpp的内容 #include "hello.h" #include...安装共享和头文件 本例我们将 hello 的共享安装到/lib目录, 将 hello.h 安装到/include/hello 目录 //文件放到该目录下 INSTALL(FILES hello.h

2.2K20

CMake学习笔记

(hello main) 后缀可以不行,他会自动去找.c和.cpp,最好不要这样写,可能会有这两个文件main.cpp和main 内部构建和外部构建 上述例子就是内部构建,他生产的临时文件特别多,不方便清理...添加一个子目录 doc,用来放置这个工程的文档 hello.txt 工程目录添加文本文件 COPYRIGHT, README 工程目录添加一个 runhello.sh 脚本,用来调用 hello...2,安装头文件与共享。 静态和动态的区别 静态的扩展名一般为“.a”“.lib”;动态的扩展名一般为“.so”“.dll”。...的内容 #ifndef HELLO_H #define Hello_H void HelloFunc(); #endif hello.cpp的内容 #include "hello.h" #include...安装共享和头文件 本例我们将 hello 的共享安装到/lib目录, 将 hello.h 安装到/include/hello 目录 //文件放到该目录下 INSTALL(FILES hello.h

2.1K20
领券