如何制作doxygen包括命名空间成员到组页面

问题描述 投票:1回答:1

我需要在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”添加到类描述中可以得到我想要的东西,但在实际程序中,一个命名空间中有几十甚至几百个类。肯定有更好的办法。

c++ namespaces grouping doxygen
1个回答
0
投票

我做了一些小测试,以下工作:

/*!
@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和关于手册中分组的段落。

© www.soinside.com 2019 - 2024. All rights reserved.