Doxygen:为什么@name 使以下所有功能都被视为已记录?

Doxygen: Why does @name makes all following functions be considered as documented?

考虑 doxygen 记录的这段代码:

class A
{
public:
    /** func1 description */
    void func1();
    void func2();
};

因为我在我的 doxyfile 中将 WARN_IF_UNDOCUMENTED 设置为 YES,所以报告 Warning: Member func2() (function) of class A is not documented.。很好

现在,如果您添加一个 @name 标签来全局描述我的两个函数:

class A
{
public:

    /** @name A's standard functions */

    /** func1 description */
    void func1();
    void func2();
};

警告不再出现。但是 func2 仍然绝对没有记录。

是不是我没有设置正确的选项?这是 doxygen 错误吗?

来自 doxygen 文档:

//!@{
//! one description for all members of this group 
//! (because DISTRIBUTE_GROUP_DOC is YES in the config file)  <-- the interesting tidbit
#define A 1
#define B 2
void glob_func();
//!@}

组内函数的隐式文档的创建由配置文件中的全局宏 DISTRIBUTE_GROUP_DOC 控制。

在 doxygen GUI 中,您会在靠近页面底部的专家窗格主题 "Project" 中找到 DISTRIBUTE_GROUP_DOC

这是一个 Doxygen 1.8.13 错误。正如 Michael Roy 所提议的那样,迁移到 Doxygen 1.8.15 可以解决这个问题。