【问题标题】:How can I @ref a different variant of the same method?如何@ref 相同方法的不同变体?
【发布时间】:2019-03-26 09:51:12
【问题描述】:

我正在为一些 C++ 代码编写 doxygen cmets。我有两个功能:

/** Some existing doxygen comment */
int foo(int x);

/** Another existing doxygen comment */
int foo(
    this_signature y1,
    is_really_long y2, 
    and_to_be_honest y3, 
    i_would y4, 
    really_rather y5, 
    avoid_repeating_it y6);

/** This is what I'm writing now */
int foo(double z);

在第二个函数的 doxygen 注释中,我想引用 @ref 来表示第二个函数,或者更确切地说是该函数的第二个变体。我该怎么做呢?

注意:我特别(不仅仅是机器人)对一个不会非常冗长的解决方案感兴趣(考虑到第二个函数的长签名)。

【问题讨论】:

标签: c++ comments documentation doxygen cross-reference


【解决方案1】:

它(就像@Scheff 写的那样)可以通过签名来引用。所以像:

/** Fie to show reference:
  *
  * \ref foo(unsigned long)
  *
  * \ref foo(unsigned long y)
  */
void fie(void);

另见http://www.doxygen.nl/manual/autolink.html#linkfunc。

关于长签名的评论,要么使用@Scheff 建议的\anchor 可能性,但在我看来,起初它看起来是一个很好的解决方案,但它的可维护性较差(在文档中检查签名变体是否存在已生成,但\anchor 的\ref 中的字符串不是(您可能需要类似:\ref my_anch "foo(unsigned long y)" 否则(\ref my_anch)链接将具有名称my_anch。

【讨论】:

  • 好的,但是 - 如果签名真的很长怎么办? ...我编辑了我的问题以反映这种担忧。
猜你喜欢
  • 2014-10-24
  • 1970-01-01
  • 1970-01-01
  • 2021-02-27
  • 1970-01-01
  • 2020-08-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多