У меня есть проблемы с Doxygen, распознающим пространства имен и модули. Я полагаю, что проблема окружает, поместить ли \addtogroup
в пространстве имен или вне пространства имен.
/*!
* \addtogroup Records
* @{
*/
//! Generic record interfaces and implementations
namespace Records
{
//! Describes the record interface
class Interface;
} // End namespace Records
/*! @} End of Doxygen Groups*/
//! Generic record interfaces and implementations
namespace Records
{
/*!
* \addtogroup Records
* @{
*/
//! Describes the record interface
class Interface;
/*! @} End of Doxygen Groups*/
} // End namespace Records
Я хотел бы namespace Records
появиться под вкладкой Doxygen Namespaces и косвенно под вкладкой Modules. Нажатие на объект на странице Namespaces должно произвести страницу, содержащую Records::Interface
. Нажатие на объект на вкладке Modules должно также произвести страницу, содержащую Records::Interface
.
В моей документации Doxygen у меня есть объекты, отсутствующие во вкладке Namespaces, которые находятся в Модулях и наоборот, из-за моего несоответствия, следующего из этой дилеммы.
Таким образом, который является правильным методом, Пример 1 или Пример 2? {Руководство Doxygen не является четким по этой теме.}
Doxygen: \addtogroup
Doxygen: документирование пространств имен
Я провел эксперимент с Doxygen и двумя примерами, и вот результаты. Имена классов в примерах были переименованы на избегайте путаницы с Doxygen.
/*!
* \addtogroup Records
* @{
*/
//! Generic record interfaces and implementations
namespace Records
{
//! Describes the record interface
class Interface;
} // End namespace Records
/*! @} End of Doxygen Groups*/
Нажмите кнопку «Модули» (на главной панели).
Щелкните модуль «Записи» в окне.
//! Generic record interfaces and implementations
namespace Fields
{
/*!
* \addtogroup Fields
* @{
*/
//! Describes the record interface
class Interface;
/*! @} End of Doxygen Groups*/
} // End namespace Fields
Нажмите кнопку «Модули» (на главной панели).
Щелкните модуль «Записи» в окне.
Местоположение команды Doxygen \ addtogroup
дает разные результаты в зависимости от того, находится ли она в определении пространства имен
или за его пределами.При объявлении вне пространства имен на вкладке Doxygen Modules будет показано пространство имен, как показано в Примере 1 выше. Когда команда \ addtogroup
помещается внутри пространства имен, вкладка Doxygen Модули не будет отображать пространства имен, как показано в Примере 2 выше. Если вы хотите, чтобы ваше пространство имен отображалось на вкладке Doxygen Modules , найдите команду \ addtogroup
за пределами пространства имен.