【问题标题】:Doxygen: documenting class in .dox fileDoxygen:在 .dox 文件中记录类
【发布时间】:2018-07-27 10:09:06
【问题描述】:

\class 命令可用于将类的文档放入 .dox 文件中——参见http://www.doxygen.nl/manual/commands.html#cmdclass。 (对于我们这些发现 Javadocs 风格的文档使头文件几乎无法阅读的人。)

如何将类方法的文档也移动到 .dox 文件中?

举个例子,如果我有一个 Datatypes.h

struct Coordinates {
    const double lat;
    const double lng;

    Coordinates(double lat, double lng);
};

然后我创建 Datatypes.dox

/** \class Coordinates
 * \brief Represents (latitude, longitude) coordinates encoded according to the World Geodetic System (WGS84).
 */

/* \var const double Coordinates::lat
 * \brief the latitude
 */

然后坐标在索引中被拾取,但 Coordinates::lat 不是。这样做的正确方法是什么?

【问题讨论】:

  • 请提供更多您想要的信息(即一个小例子+输出指示)。看起来有点像您想使用\copydoc,但您的问题并不清楚。还请指定您的 doxygen 版本。
  • @albert 见上文...

标签: doxygen


【解决方案1】:

查看我们看到的Datatypes.dox的代码:

/* \var const double Coordinates::lat
 * \brief the latitude
 */

这不是一个 doxygen 理解的评论,而是一个常规的评论。注释应该是(注意第一行的第二个*):

/** \var const double Coordinates::lat
 * \brief the latitude
 */

或者,您可以将两个文档部分加入到:

/** \class Coordinates
 * \brief Represents (latitude, longitude) coordinates encoded according to the World Geodetic System (WGS84).
 *
 * \var const double Coordinates::lat
 * \brief the latitude
 */

【讨论】:

  • 哦。 ...但仍然不对;我收到“警告:未声明或定义记录符号‘const double Coordinates::lat’。”
  • 奇怪我只得到(如预期的那样):.../Datatypes.h:6: warning: Member Coordinates(double lat, double lng) (function) of class Coordinates is not documented..../Datatypes.h:4: warning: Member lng (variable) of class Coordinates is not documented.你使用的是哪个版本的 doxygen?您是否尝试过您在此问题中输入的代码,只需剪切并粘贴回去以确保没有其他拼写错误(白痴)。
  • 可能发现了问题,您确定Datatypes.h 被读取为当我删除Datatypes.h 时收到上述警告。
  • 就是这样——我写了FILE_PATTERNS = *.h, *.dox,而 doxygen 不喜欢逗号。非常感谢!
猜你喜欢
  • 1970-01-01
  • 2012-08-25
  • 1970-01-01
  • 2017-08-25
  • 2012-11-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-07-22
相关资源
最近更新 更多