【问题标题】:doxygen document c++ class templatesdoxygen 文档 c++ 类模板
【发布时间】:2015-01-14 12:38:00
【问题描述】:

我正在尝试记录以下内容:

template <class T, int NDim>
class myClass {

public:
.
.

这里是doxygen

/*!
 * \class myClass<T, NDim>
 * \brief Defines a class for stuff. 
*/

发电量:

myClass 类参考

为东西定义一个类。

所以我错过了模板信息,但这不是世界末日,因为我知道 doxygen 不能很好地处理模板。主要问题是生成期间的警告:

myClass.h:2:警告:作为参数提供的名称“T” \class、\struct、\union 或 \include 命令不是输入文件

我该如何解决这个警告?

【问题讨论】:

    标签: c++ class templates doxygen


    【解决方案1】:

    AFAIK 没有必要明确指定\class,doxygen 应该自动检测类名,只要你把文档放在模板类声明之前

    /** << NOTE
     * \brief Defines a class for stuff. 
     * \tparam T Type to work with.
     * \tparam NDim Number of dimensions.
     */
    template <class T, int NDim>
    class myClass {
    
    public:
    .
    .
    };
    

    要为模板参数指定文档,请使用\tparam

    另请注意:&lt;&gt; 的使用将被 doxygen 解释为内联 HTML 标签。请改用\&lt;\&gt;

    【讨论】:

    • 对我来说,如果我移除 \class 则不会为该类生成 html 文件
    • @ldgorman 奇怪,我一直在使用它,如我的示例所示。我不确定是不是因为 doxygen 注释块的启动方式(我使用的是/** 而不是/*!
    • 太好了,将注释块分隔符更改为/** 似乎已修复它。谢谢
    猜你喜欢
    • 2011-02-25
    • 2016-12-07
    • 2011-01-31
    • 2012-08-04
    • 2011-06-14
    • 1970-01-01
    • 2011-03-27
    • 1970-01-01
    相关资源
    最近更新 更多