Doxygen命名空间中的枚举

3
我正在撰写这段代码的文档:

我正在撰写这段代码的文档:

    namespace A {

    enum ENUM 
    {
        /// \var step to frame
        ENUM_1  = 0,            //!< val1
        ENUM_1  = 1,            //!< val2
        ENUM_2 = 2          //!< val3
    };

}

结果是,ENUM类型的注释值没有显示出来。

当我删除命名空间时,一切都很好,但现在不行了。

3个回答

2
你需要使用这个格式:

您必须使用此格式:

    namespace A {
            /*!
            *  \addtogroup A
            *  @{
            */

            /// step to frame
            enum ENUM 
            {
                    ENUM_1  = 0,            //!< val1
                    ENUM_1  = 1,            //!< val2
                    ENUM_2 = 2          //!< val3
            };

            /*! @} */

    }

1
这是一篇旧帖子,但对于像我一样在命名空间下苦苦挣扎的人来说,这里有一个简单的解决方案,无需使用\addtogroup。只需确保为您的命名空间添加描述即可。这样,甚至自动链接也可以完美运行。
/// this the namespace A
namespace A {
    /// step to frame
    enum ENUM 
    {
        ENUM_1 = 0,         //!< val1
        ENUM_1 = 1,         //!< val2
        ENUM_2 = 2          //!< val3
    };
}

对于嵌套命名空间,您应该为包含其他变量、枚举、函数等的命名空间添加描述。

namespace A {
  /// this the namespace A::B
  namespace B {
    /// step to frame 
    enum ENUM 
    {
        ENUM_1 = 0,         //!< val1
        ENUM_1 = 1,         //!< val2
        ENUM_2 = 2          //!< val3
    };
  }
}

顺便测试在1.8.7中。

1

您将enum文档头放在了错误的位置,它应该直接位于enum定义的上方:

/// \brief Step to frame
enum ENUM
{
    ...
};

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接