Windows下使用doxygen閱讀和分析C/C++代碼

Windows下使用doxygen閱讀和分析C/C++代碼html

轉自:http://blog.sina.com.cn/s/blog_63d902570100gwk6.html算法

雖然使用各類IDE或者Source Insight 能夠方便地在windows下閱讀和分析C/C++代碼,可是一步步Go to Definetion 實在使人痛苦。Doxygen可以生成函數調用關係圖,全部的函數調用關係能夠一目瞭然,另外他還能統計文檔中全部的類,成員變量,成員函數等。總的來講,Doxygen不但能從局部把握代碼,還能從全局審視代碼,後者是通常IDE和Source Insight 不能作到的。因此,使用doxygen閱讀分析代碼能夠達到事半功倍的效果。windows

          doxygen的安裝很簡單,到官方網站下載doxygen的windows安裝程序便可。除了安裝doxygen外,還須要安裝graphviz,由於doxygen須要使用graphviz的dot.exe生成調用圖。graphviz在它的官方網站上也能夠下載到安裝程序。不過我下載的安裝程序在安裝時總是報cab文件錯誤。最後我下載了graphviz的release文件,即安裝程序下面的zip壓縮文件,下載完成後解壓縮便可。函數

         安裝完doxygen後便可進行適當的配置,而後運行doxyfile生成文檔。基本的配置前人早有說明,再也不贅述。須要注意的是:網站

        1.要勾選Dot選項卡下面的HAVE_DOT、CALL_GRAPH 、CALLER_GRAPH 選項。並在DOT_PATH下面填入dot.exe的路徑,也就是graphviz安裝目錄下的bin文件夾。ui

        2.勾選Wizard->Project選項卡下面的Scan recursively!spa

        3.勾選Build選項卡下面的EXTRACT_ALL、EXTRACT_PRIVATE、EXTRACT_STATIC、EXTRACT_LOCAL_CLASSES、EXTRACT_LOCAL_METHODS選項命令行

        4.若是程序裏面有中文,將Project選項卡下的DOXYFILE_ENCODING和Input選項卡下面的INPUT_ENCODING改成GBK3d

       5.能夠勾掉LATEX輸出,這樣節省編譯時間htm

 

Doxygen是一款開源軟件,可用於從已經存在的VC工程中提煉出軟件文檔(HTML等格式),包括文件說明、類說明、屬性方法說明、類關係等內容。通常常將Doxygen和 graphviz兩款軟件一塊兒安裝,後者是一款繪圖軟件,可在前者生成的軟件文檔中增長圖表。Doxygen的細節能夠上網搜索。這裏貼一下我的體會,可幫助感興趣的朋友迅速上手這個軟件: 

1,安裝DOXYGEN和 graphviz後,能夠在「DOXYGEN安裝目錄in」下用命令行方式運行doxygen.exe -g 生成一個名爲Doxyfile的配置文件。 

2,將文件Doxyfile複製到想生成文檔的VC工程目錄下。 
修改該文件中的以下選項: 
PROJECT_NAME = 填上項目名稱 
OUTPUT_LANGUAGE = 改成Chinese 
GENE RATE_LATEX = 改成NO 
EXT RACT_ALL = 改成YES 
HAVE_DOT = 改成YES 
DOT_IMAGE_FORMAT = 該爲JPG 
DOT_PATH = 填上"C:/Pro gram Files/ATT/ Graphviz/bin/" 
DOTFILE_DIRS = 填上"c:/Pro gram Files/ATT/ Graphviz/bin/" 

3,對VC工程進行以下修改 
(1)在stdAfx.h中增長預約義,以支持DOT畫圖。 
#ifndef _DIA GRAMS_A_H 
#define _DIA GRAMS_A_H  #endif  (2)在重要的類、方法、屬性前面增長註釋,以支持DOXYGEN分析。  /// @brief 最主要的業務實現類  ///  /// 全部的算法內容基本都在這個類中實現。  ///  /// @author lipp  或者放在語句後面  char sFilename[400]; ///< LOG文件名  並在重要文件前增長註釋  /// @file xxx.cpp  /// 被其餘程序調用的,實現了算法的DLL主程序。  /// 包括各個方法輸出接口。  4,運行DOXYGEN.exe。LOAD以上的Doxyfile文件。點擊START。這時會生成一個新的HTML目錄在VC工程目錄中。  5,使用IE打開新生成的HTML目錄中的INDEX.htm文件。
相關文章
相關標籤/搜索