我想在头文件中记录外部 API,如下所示
// bar.h
#ifdef __cplusplus
extern "C" {
#endif
/**
* \memberof bar
* This is foo
*/
extern int foo();
#define JUNK_A DONT_DOC_IT
#define JUNK_B DONT_DOC_IT
#ifdef __cplusplus
}
#endif
函数 foo()
定义在存档文件中的某个位置,并且“bar.h”作为用户 API 公开,我想记录它。但 doxygen 无法生成它。
我不想启用 EXTRACT_ALL,因为还有一些其他事情我不想记录它。
如示例代码所示,我已经尝试过 \memberof
但它不起作用。有人可以帮助我吗?
最佳答案
根据@rveerd 的提示,我完成了答案。首先,它需要一个 \file
命令来记录全局对象。在此步骤中,所有对象都已记录,包括我们不想记录的对象。因此,我们需要通过添加 \cond HIDDEN_SYMBOLS
来丢弃不需要的部分。示例代码如下:
/** @file test.h */
#ifdef __cplusplus
extern "C" {
#endif
/**
* @brief This is foo
*/
extern int foo();
/** @cond HIDDEN_SYMBOLS */
#define JUNK_A DONT_DOC_IT
#define JUNK_B DONT_DOC_IT
/** @endcond */
#ifdef __cplusplus
}
#endif
关于c - doxygen 无法在 c 中生成 extern api,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39353302/