Doxygen 的使用简介

Doxygen 是一个类似 JavaDoc 的文档生成工具。有了它,C++爱好者就可以为自己的源代码很方便地生成美观实用的文档了。

为代码生成文档标注基础

  您可以使用JavaDoc风格,类似于由C风格的注释块:
/**
* ... 文本 ...
*/

此外您也可以使用Qt风格,如

/*!
* ... 文本...
*/

以上两种风格中间的*是可选的,也就是下面这样写也是可以的:

/*!
... 文本...
*/

第三种是使用至少两行C++"//"注释,如:

///
/// ... 文本...
///

或者

//!
//!...文本...
//!

有的程序员也许喜欢下面这种风格,有比较好的视觉效果:

/
/// ... 文本...
/

  对于简单的描述信息,可能有几种情况。一种是在注释块的开头使用/brief命令,该命令一直到段落结束有效,所以详细描述信息从空一行后开始,如下例:

/*! /brief 简洁的描述信息 description.
* 又一些简洁的描述信息。
*
* 详细描述信息从这里开始。
*/

  在配置文件中,如果JAVADOC_AUTOBRIEF设为YES,则Doxygen将使用JavaDoc风格的注释块,从简洁描述信息后的点空格. 开始为详细描述信息,例如:

/** 简洁信息结尾是一个点号. 详细描述信息从
* 这里开始
*/

该选项对C++风格的多行注释也是有效的:

///简洁信息结尾是一个点号. 详细描述信息从
///这里开始

或者:

/// 简洁描述信息
/** 详细描述信息*/

或者:

//!简洁描述信息

//!详细描述信息从
//!这里开始

  此例中间空行用来分割简洁描述信息块和详细描述信息块。可见doxygen的文档标注使用格式是非常自由的。不过要注意下面格式是不合法的,因为doxygen只允许一块详细描述信息对应一块简洁描述信息:

//!简洁描述信息
//! 详细描述信息
/*! 注意,又一详细描述信息!
*/
下例使用Qt风格的文档标注:
//! A test class. 
/*!
A more elaborate class description.
*/

class Test
{
  public:

    //! An enum.
    /*! More detailed enum description. */
    enum TEnum { 
                 TVal1, /*!< Enum value TVal1. */  
                 TVal2, /*!< Enum value TVal2. */  
                 TVal3  /*!< Enum value TVal3. */  
               } 
         //! Enum pointer.
         /*! Details. */
         *enumPtr, 
         //! Enum variable.
         /*! Details. */
         enumVar;  
    
    //! A constructor.
    /*!
      A more elaborate description of the constructor.
    */
    Test();

    //! A destructor.
    /*!
      A more elaborate description of the destructor.
    */
   ~Test();
    
    //! A normal member taking two arguments and returning an integer value.
    /*!
      /param a an integer argument.
      /param s a constant character pointer.
      /return The test results
      /sa Test(), ~Test(), testMeToo() and publicVar()
    */
    int testMe(int a,const char *s);
       
    //! A pure virtual member.
    /*!
      /sa testMe()
      /param c1 the first argument.
      /param c2 the second argument.
    */
    virtual void testMeToo(char c1,char c2) = 0;
   
    //! A public variable.
    /*!
      Details.
    */
    int publicVar;
       
    //! A function variable.
    /*!
      Details.
    */
    int (*handler)(int a,int b);
};

  Doxygen的文档标注是不是非常容易?当然还可以有更高级的应用,如标注列表、分组,甚至支持生成公式(Latex)。上面只编译了最简单的一些使用方法,更多内容请参考Doxygen的帮助文档doxygen_manual。

附带文档的说明:

  DoxygWizard是基于QT的简易图形用户界面,简化了Doxygen的使用。您可以在DoxygWizard里对需要生成的文档进行设置,可保存为"Doxyfile",然后调用Doxygen生成文档。需要注意的是,文件路径不支持中文,所以尽可能使您的源代码和文档目录均为英文名。在"Doxyfile"文件同一目录请放置一个"mylogo"纯文本文件,内容可以是一些版权标识信息,这些信息将显示在生成文档页面的最下边,如果没有此"mylogo"文件,将生成默认的版权标识信息。
  样式表文件Orignl_doxygen.css、green_doxygen.css、yellow_doxygen.css、Blue_doxygen.css,改文件名为doxygen.css后,拷贝到生成html文档的目录内可以改变文档显示的样式。
  OUT PUT_LANGUAGE 可选项为Englisth(英文文档), Chinese(中文文档), En_Can_Cn(支持中文注释的英文文档)

相关网址:

http://www.doxygen.org/download.html
您还需要下载graphviz dot画图:
http://www.research.att.com/sw/tools/graphviz/
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Doxygen是一款流行的代码文档生成工具,它可以从源代码中自动生成详细和易于阅读的文档。下面是使用Doxygen的简单教程: 1. 安装Doxygen:首先,你需要从Doxygen的官方网站(https://www.doxygen.nl/)下载并安装Doxygen。根据你的操作系统选择合适的版本进行安装。 2. 创建配置文件:在你的项目根目录下创建一个名为`Doxyfile`的配置文件。可以使用以下命令生成默认的配置文件: ``` doxygen -g Doxyfile ``` 3. 配置文件设置:打开`Doxyfile`配置文件,在其中可以修改一些选项以满足你的需求。以下是一些常用的配置选项: - `PROJECT_NAME`:设置项目的名称。 - `INPUT`:指定要生成文档的源代码目录或文件。 - `OUTPUT_DIRECTORY`:指定生成的文档输出目录。 - `EXTRACT_ALL`:设置为`YES`以提取所有文档,包括没有注释的。 - `GENERATE_HTML`:设置为`YES`以生成HTML格式的文档。 - `GENERATE_LATEX`:设置为`YES`以生成LaTeX格式的文档。 4. 生成文档:运行以下命令来生成文档: ``` doxygen Doxyfile ``` 5. 查看文档:完成上述步骤后,Doxygen将会在指定的输出目录中生成文档。你可以在浏览器中打开生成的HTML文件来查看文档。 这只是一个简单的Doxygen教程,Doxygen还提供了更多高级配置选项和功能,如自定义模板、图形化界面等。你可以参考Doxygen的官方文档以获取更详细的信息和进一步的学习资源。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值