Doxygen-如何链接到C ++文件范围的全局变量

0xb*_*7ed 2 c++ doxygen

我有一些看起来像这样的代码:

MyStruct.h

struct MyStruct
{
    // ...

    /**
      * \brief Initializes \link MYSTRUCT \endlink.
      */
    static void init();
};

/**
 * \var MYSTRUCT
 * \brief You must call MyStruct::init() before using this variable.
 */
extern MyStruct const * MYSTRUCT;
Run Code Online (Sandbox Code Playgroud)

我想将Doxygen文档MyStruct::init链接到上的Doxygen文档MYSTRUCT。但是,我提供的Doxygen无法解析该链接。我需要做什么才能使链接正常工作?

注意:Windows 7上的Doxygen v 1.8.4

dox*_*gen 5

这是应该工作的更正示例。请注意,我在\ file中添加了一个注释块(并删除了多余的\ var)

/** \file */

/** My struct documentation */
struct MyStruct
{
    // ...

    /**
     * \brief Initializes \link MYSTRUCT \endlink.
     */
    static void init();
};

/**
 * \brief You must call MyStruct::init() before using this variable.
 */
extern MyStruct const * MYSTRUCT;
Run Code Online (Sandbox Code Playgroud)

如果您不希望包含全局数据的页面,但希望MYSTRUCT作为MyStruct文档的一部分出现,则可以使用\ relates,如下所示:

/** My struct documentation */
struct MyStruct
{
  // ...

  /**
   * \brief Initializes \link MYSTRUCT \endlink.
   */
  static void init();
};

/**
 * \brief You must call MyStruct::init() before using this variable.
 * \relates MyStruct
 */
extern MyStruct const * MYSTRUCT;
Run Code Online (Sandbox Code Playgroud)

并且可以#MYSTRUCT用作以下内容的简写形式\link MYSTRUCT \endlink