【问题标题】:Doxygen parse const member function incorrectly when const at another line当 const 在另一行时,Doxygen 错误地解析 const 成员函数
【发布时间】:2015-07-19 03:16:46
【问题描述】:

我已经尝试在官网搜索stackoverflow和users mailing list,但没有找到对我的问题有用的东西,有很多不相关的结果...

我使用的 Doxygen 是 1.8.5 版本。

我更喜欢这样设置我的成员函数声明,我们称之为 const-at-another-line 样式。

ReturnType
FunctionName()
const;

我知道大多数人只是使用同行样式,

ReturnType FunctionName() const;

或者只是返回类型在另一行样式

ReturnType
FunctionName() const;

对于 all-in-same-line 样式和 return-type-at-another-line 样式,doxygen 可以正确解析。

但是 const-at-another-line 样式的文档会导致 Member Data 称为“const”,类型为 ReturnType。

class Signal : public Interface {
    bool
    HasSignal()
    const;
};

文档显示类 Signal 具有公共属性

bool const

以及会员数据文档中的详细文档显示

bool Signal::const

我也试过这些情况,纯虚函数:

bool
HasSignal()
const =0;

结果

bool Signal::const =0

和 C++11 final/override 关键字: (我不希望 Doxygen 完全支持 C++11 语法,只是为了比较)

bool
HasSignal()
const
override;

导致公共属性

bool const override

which "const" 链接到 Interface 类中的成员数据文档

virtual bool Interface::const = 0

和“覆盖”类Signal中的成员数据文档链接

bool const Signal::override

我的问题是: Doxygen 中是否有一些我错过的配置可以帮助解析/记录 const 成员函数是否正确使用 const-at-another-line 样式? 或者我只能修改样式以适合 Doxygen 用于文档目的?

【问题讨论】:

  • 看起来这个问题已经在 1.8.6 及更高版本中得到修复(请注意,1.8.5 版本是 2013 年 8 月发布的,所以它相当旧)。
  • 我会检查新版本,谢谢!
  • @doxygen 我已经下载了 1.8.6 版本并确认它已在 1.8.6 中修复,我还搜索了更改日志,但不确定哪个项目记录了此更改。您可以再次回复而不是评论,以便我可以接受它作为答案吗?感谢这个伟大的工具!

标签: c++ coding-style doxygen


【解决方案1】:

看起来这个问题已在 1.8.6 及更高版本中得到修复(请注意,1.8.5 版本于 2013 年 8 月发布,所以它相当旧)。撰写本文时的最新版本是 1.8.9.1。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-02-23
    • 2021-11-14
    • 2011-06-04
    • 2013-05-17
    • 1970-01-01
    • 2016-08-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多