我需要在doxygen组页面上获取所有类(和其他元素)的列表,即使它们是名称空间成员。所以如果我有这样的代码示例:
/*!
@defgroup test_group Example group
@{*/
class some_class {};
/// @}
Doxygen将生成包含我的“some_class”的组页面:
.
但是在命名空间添加后,doxygen将所有命名空间成员“隐藏”到新页面。下一个代码:
/*!
@defgroup test_group Example group
@{*/
namespace example_namespace {
class some_class {};
}
/// @}
生成一个组页面,包含指向名称空间页面的链接。
.
我们无法在组页面上看到命名空间成员。
接下来的两种方法给出相同的结果:
// 1. putting namespace content in brackets @{ @}:
/// @defgroup test_group Example group
namespace example_namespace {
/*!
@ingroup test_group
@{ */
class some_class {};
/// @}
}
// 2. putting namespace itself to group:
/// @defgroup test_group Example group
/// @ingroup test_group
namespace example_namespace {
class some_class {};
}
我想获得一个组页面,它将包含命名空间和命名空间本身的所有类。我知道将“@ingroup
”添加到类描述中可以得到我想要的东西,但在实际程序中,一个命名空间中有几十甚至几百个类。肯定有更好的办法。
我做了一些小测试,以下工作:
/*!
@defgroup test_group Example group
@{*/
namespace example_namespace {
/*!
@defgroup test_group Example group
@{*/
/** the class */
class some_class {
/*!
@defgroup test_group Example group
@{*/
public:
/** the fie */
void fie(void);
/// @}
};
/// @}
};
/// @}
这有点开销,也许你也应该看看其他group
命令,如\ingroup
,\addtogroup
和关于手册中分组的段落。