Doxygen 混淆了函数文档和内部文档 class
Doxygen confused between documentation of function and inner class
Doxygen 1.8.10
在 class 中,我有一个函数,其中声明了一个内部 class。
/*! This is a test class
*/
class TestClass {
/*! \brief A function which does something
* \param param_A this is the first parameter of doSomething function
* \param param_B this is the second parameter of doSomething function
*/
void doSomething(int param_A, int param_B) {
/*! This is an inner Test Class
*/
class InnerTestClass {
/*! \brief A constructor for InnerTestClass
* \param param_C this is the parameter for the InnerTestClass inner class constructor
*/
InnerTestClass (int param_C) {
}
}
当我为上述 class 生成 doxygen 文档时,函数 doSomething 和内部 class InnerTestClass 的文档之间发生了混淆。
- 没有创建名为 classInnerTestClass.html 的内部 class 文档文件。
在classTestClass.html的文档中,InnerTestClass的文档包含在函数的文档中,如下:
doSomething(int param_A
整数 param_B
)
一个做某事的函数
参数
param_A 这是doSomething函数的第一个参数
param_B这是doSomething函数的第二个参数
这是一个内部测试Class
参数
param_C这是InnerTestClass内部class构造函数
的参数
- 显示的警告消息表明 param_A 和 param_B 未记录,并且在 doSomething 的参数列表中未找到 param_C。
在 functions/methods 中定义的 Structs/Classes 被视为实现细节,无法记录(就像您无法记录单个 for 循环或 if 语句一样)。
将 doxygen 视为记录 public API 的工具。如果您还想显示实现,请使用普通注释对其进行记录,并在配置文件中将 INLINE_SOURCES
设置为 YES
。
Doxygen 1.8.10
在 class 中,我有一个函数,其中声明了一个内部 class。
/*! This is a test class
*/
class TestClass {
/*! \brief A function which does something
* \param param_A this is the first parameter of doSomething function
* \param param_B this is the second parameter of doSomething function
*/
void doSomething(int param_A, int param_B) {
/*! This is an inner Test Class
*/
class InnerTestClass {
/*! \brief A constructor for InnerTestClass
* \param param_C this is the parameter for the InnerTestClass inner class constructor
*/
InnerTestClass (int param_C) {
}
}
当我为上述 class 生成 doxygen 文档时,函数 doSomething 和内部 class InnerTestClass 的文档之间发生了混淆。
- 没有创建名为 classInnerTestClass.html 的内部 class 文档文件。
在classTestClass.html的文档中,InnerTestClass的文档包含在函数的文档中,如下:
doSomething(int param_A 整数 param_B )
一个做某事的函数
参数 param_A 这是doSomething函数的第一个参数 param_B这是doSomething函数的第二个参数
这是一个内部测试Class
参数 param_C这是InnerTestClass内部class构造函数
的参数- 显示的警告消息表明 param_A 和 param_B 未记录,并且在 doSomething 的参数列表中未找到 param_C。
Structs/Classes 被视为实现细节,无法记录(就像您无法记录单个 for 循环或 if 语句一样)。
将 doxygen 视为记录 public API 的工具。如果您还想显示实现,请使用普通注释对其进行记录,并在配置文件中将 INLINE_SOURCES
设置为 YES
。