c - 在 C 的 doxygen 文档中扩展非函数宏

标签 c doxygen

我正在尝试使用 doxygen 记录我的 C 代码。我使用#define 将一些默认值设置为宏。 (我知道 C 没有默认值,但这只是一个例子)

例如:

#define DEFAULT_WIDTH  100
#define DEFAULT_HEIGHT 200

在 doxygen 中,我添加了一个别名,以我想要的方式处理默认值。考虑下面的示例函数

//! Initializes something
//! @param width The width @default DEFAULT_WIDTH
//! @param height The height @default DEFAULT_HEIGHT
//! @return Result of initialization
char initSomething(int width,int height);

除一个重要事实外,这将生成我想要的文档。 DEFAULT_WIDTH 和 DEFAULT_HEIGHT 没有展开,我得到的是宏名称,而不是分别是 100 和 200。我确实选中了 MACRO_EXPANSION 和 ENABLE_PREPROCESSING。

我错过了什么?实际上有什么方法可以使用 doxygen 来实现吗?

我正在使用 doxywizard 配置 doxygen,我目前正在 Windows 下进行测试。

编辑:正如 ugoren 指出的那样,可以只记录宏,然后 doxygen 会将该文档链接到它们。实际上,这就是我当前在项目中的实现方式。但我正在尝试考虑其他选项 - 如果存在的话。

最佳答案

我认为没有什么比 MACRO_EXPANSION 和 ENABLE_PREPROCESSING 更强大的了。
问题可能是注释中的宏通常不会展开。这是有充分理由的 - 想象宏 max 在文档中展开。

您可以记录宏,以便文档的读者能够轻松找到真正的值(value)。

关于c - 在 C 的 doxygen 文档中扩展非函数宏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9299608/

相关文章:

c - 按位 C 编程

c - Doxygen 不一致地扩展 C 宏

c - 静态变量在不应该的时候出现在 Doxygen 文档中

c++ - 使用 doxygen 记录枚举类值

c - 通过引用将双数组从 C 传递到 Delphi DLL

c - "C: A reference manual"这本书中关于整数常量

c - `printf` 中的 %*c%*c 是什么?

c - "Anagram"用C写的程序

xml - 如何协调 Visual Studio 注释期望与具有 Doxygen 注释的代码?

c++ - 在 Doxygen 中记录 C++ 别名