【问题标题】:No Autolinks in standalone Doxygen file独立 Doxygen 文件中没有自动链接
【发布时间】:2013-02-26 17:51:05
【问题描述】:

我正在尝试按照Best Tips for documenting code using doxygen? 中的最高建议为我的应用程序编写一个独立的 Doxygen 文件。

在我的概述中,我引用了类文件,但链接不显示。

文件 A.cs:

namespace NoAutoLinks
{
    public class A
    {
    }
    public class B
    {
        public A A { get; set; }
    }
}

文件 Doxygen.cs:

/// @file Doxygen.cs
/// @mainpage No Auto Links
/// I want to link to A and B here.  Even explicit @ref A and \ref B links don't show up here.

主页面已呈现,但没有指向 A 或 B 的链接。在 B 的类页面中,确实显示了指向 A 的自动链接。

Doxyfile 确实包含AUTOLINK_SUPPORT = YES

我看到几篇关于关闭自动链接的文章,但没有关于自动链接失败的这种特殊情况。

【问题讨论】:

  • 注意,如果我在 B 的类定义中创建一个锚点 @anchor C,然后在主页上放置一个显式的 @ref C,那么该链接确实会转到 B 类。但即使是显式的 @987654328 @ 对类的引用不起作用。
  • 如果我尝试使用@link B B @endlink 强制链接,我会得到一个指向 index.html 的链接。 stackoverflow.com/questions/9098680/… 暗示这可能是因为 B 是无效的链接对象
  • 向类添加公共函数没有任何区别。 (这里在黑暗中拍摄。)

标签: c# doxygen


【解决方案1】:

这是一个命名空间问题。以下工作。

namespace NoAutoLinks
{
    /// @file Doxygen.cs
    /// @mainpage No Auto Links
    /// I want to link to A and B here.
}

不幸的是,示例比实际问题要简单。在实际问题中有两个命名空间,这个解决方案只修复了其中一个。添加using otherNamespace 似乎没有帮助。类文档似乎在桥接命名空间方面没有任何问题。

当然,一旦你知道了答案,就更容易找到参考资料,但看起来其他人也没有第二个命名空间的解决方案。

欢迎提供解决第二个命名空间的其他答案。

【讨论】:

    【解决方案2】:

    显式链接,包括命名空间工作:

    @link Namespace.C C @endlink
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-07-26
      • 1970-01-01
      • 1970-01-01
      • 2013-12-04
      • 1970-01-01
      • 2014-02-12
      • 2016-09-12
      相关资源
      最近更新 更多