doxygen 配置 示例

来源:互联网 发布:马自达3星骋轮毂数据 编辑:程序博客网 时间:2024/06/15 08:08

声明:本人一个菜鸟,英语太烂,所以不得意只得摸索,恐又忘记所以记在此处,若有不对的地方,烦劳指出,不胜感激。

author:fym0121@163.com

license:GPL

OS:windows

doxygen可以将代码中的注释生成文档,方便我们查看

本文以C++语言为例,在windows环境上,试着生成javadoc类型的html代码文档

1、下载,安装

    下载地址在http://www.doxygen.nl/ ,右侧有download,下载windows下的binary版本,安装全部默认就行了

2、配置

    配置可以直接修改配置文件或用gui接口的doxywizard.exe ,我以修改文件为例,gui那东西,一看就懂了。

2.1 生成配置文件

      进入代码所在目录,然后输入下面的命令,就可以生成配置文件模版

doxygen -g doxy_conf

2.2 修改模版

    模版格式是典型的unix系统上的配置类型,#表示注释,TARGET=abc 这样的格式,一行一条配置。主要的配置如下

OUTPUT_LANGUAGE=Chinese    #大家都是中国人嘛RECURSIVE=YES                       #递归,这个也是必选的BRIEF_MEMBER_DESC=YES        #显示简要描述 OPTIMIZE_OUTPUT_FOR_C=YES        #貌似可以对C语言的文档进行优化EXTRACT_ALL=YES                     #一定要YES,要不然生不出文档EXTRACT_PRIVATE=YES             #类中的private也能文档化EXTRACT_STATIC=YES               #静态类型也可以文档化INPUT_ENCODING=GBK           #输入代码文件的编码格式,我系统默认是GBK的,如果有乱码的话缓存UTF-8FILE_PATTERNS=*.c   *.cpp    *.cxx   *.cc   *.c++  *.h     #文件模式,我是以C++语言为例的SOURCE_BROWSER=YES          #可以在文档中流量源代码,这样的话,文档会变大的,要斟酌GENERATE_HTML=YES            #生成html格式文档JAVADOC_AUTOBRIEF=YES     #在这个例子中,我们使用javadoc风格的注释GENERATE_TREEVIEW=YES     #在文档中有个侧边栏,可以导航,很棒的TREEVIEW_WIDTH=250          #侧边栏的宽度 #其他默认

2.3 生成文档

doxygen doxy_conf

现在应该建立了一个html目录,进入这个目录,用浏览器打开index.html,看看效果


代码

/** *  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. */           }        *enumPtr, /**< enum pointer. Details. */       enumVar;  /**< enum variable. Details. */             /**       * 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.       * @see Test()       * @see ~Test()       * @see testMeToo()       * @see publicVar()       * @return The test results       */       int testMe(int a,const char *s);             /**       * A pure virtual member.       * @see 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);};

doxywizard.exe 可以方便地用GUI接口修改配置文件,自己摸索一下就好了


原创粉丝点击