3

我正在用C编写一个小程序,我想记录它,以便其他人可以更改一些细节。我用 s 编写了一个 config.h 文件,#define它可以启用或不启用某些操作,其中一些是互斥的,另一些则不是。

不互斥的例子:

#define USE_A
#define USE_B
#define USE_C

互斥示例:

#define BUILD_FULL
#define BUILD_COMPACT

到目前为止,我通过记录我不想使用的功能来选择要编译的程序的配置,例如:

//#define BUILD_FULL
#define BUILD_COMPACT

构建一个 COMPACT 可执行文件。

如何为注释掉的功能编写文档?

我试过:

#define USE_A //!< Special Feature
#define USE_B //!< Special Feature
//#define USE_C //!< Special Feature

我没有编译它,USE_C但显然我丢失了文档,因为 doxygen 没有解析它。#define如果我误解了使用定义的正确方式,你将如何重写流程?

4

1 回答 1

3

您可以测试宏的,而不仅仅是它的存在。例如,使用 0 禁用选项,或使用 1 启用它。然后,使用#if代替#ifdef来测试条件。

#define USE_A 1    //!< Special Feature
#define USE_B 1    //!< Special Feature
#define USE_C 0    //!< Special Feature

#if USE_A
...
#elif USE_C
...
#endif  
于 2012-04-23T12:50:15.470 回答