Understand 2.0使用

Understand 2.0是一款源代碼閱讀分析軟件,功能強大。試用過一段時間後,感受至關不錯,確實能夠大大提升代碼閱讀效率。因爲Understand功能十分強大,本文不可能詳盡地介紹它的全部功能,因此只列舉本人認爲比較重要或有特點的功能,以作拋磚引玉之舉。正則表達式

Understand 2.0能夠從http://www.scitools.com/下載到,安裝後能夠試用15天。數據庫

使用Understand閱讀代碼前,要先建立一個Project,而後把全部的源代碼文件加入到這個Project裏。這裏我建立了一個ATLSTL的Project,而後把Microsoft Visual Studio 2008帶的ATL、STL、MFC的源代碼加入其中。須要說明的是,Understand支持不少種源代碼,包括C#,而不光是C++代碼。瀏覽器

這是整個用戶界面的概覽,能夠看到和Visual Studio的風格很類似。全部了子窗口均可以任意停靠或折迭。函數

Understand界面概覽

 

 下面逐個介紹Understand的特性。工具

一,強大的自動繪圖能力。.net

Understand能夠生成許多種有用的圖形,如類關係圖、函數調用關係圖、頭文件包括關係等。下面是CFile的類圖。blog

CFile類圖

 

固然,若是願意,你能夠生成CObject派生的整個MFC的類圖(http://p.blog.csdn.net/images/p_blog_csdn_net/qwang24/EntryImages/20090411/ButterflyGraph-CObject.png)。這種圖之前只能在MSDN裏能夠見到,如今能夠在瞬間自動生成,很酷!ci

 

還能夠顯示函數的調用關係:get

 

函數調用關係圖

 

以及頭文件的包括關係:it

頭文件包括圖

 

二,出色的增量搜索功能

增量搜索也許不是新概念,在Visual Studio裏早就有。可是Understand裏的增量搜索具備動態代碼加亮的功能。也就是說,能夠把選中的標識符的全部實例,都以醒目的顏色顯示出來,對於閱讀代碼時,很是有幫助。以下圖,對函數參數pFileTime執行增量搜索,則它出現的過地方都會被標示出來。這樣,這個參數是如何被使用的,一目瞭然。

 

增量搜索

 

 

三,豐富的標識符信息

Understand的代碼信息數據庫十分完善,全部的標識符能夠分類顯示。每一類標識符又具備不一樣的信息。如關於函數的信息,能夠顯示定義它的文件名,返回值類型,參數信息,調用函數,被調用函數,引用這個函數的信息,代碼量等。其中,引用信息裏會有引用類型,如申明、調用、定義等,很是實用。

函數信息

 

而對於變量信息,而以顯示變量在哪裏定義的,是設置變量的值仍是使用變量的值等。

變量信息

 

四,方便的搜索功能

不少窗口都有方便的搜索功能,便於快速定位須要的信息。如項目瀏覽器裏,能夠輸入文件名,快速找到相關的文件。

文件名搜索

 

Understand還有不少其餘強大的功能,如報表功能,代碼編輯,代碼變化跟蹤等。

固然,和其餘全部的代碼分析工具軟件同樣,Understand也有一些不足之處,若有時候會解析錯誤,不支持COM代碼的Attribute擴展,對機器配置要求較高,對正則表達式的支持不完善等。

 

備註:

解決不能正確解析COM的Attribute擴展問題: 搜索正則表達式: /]/s*$ , 替換爲 /]; (使用Visual Studio的在多個文件中替換功能,不能直接使用Unserstand替換。)

解決不能正確解析__interface關鍵字問題: 在project選項裏增長宏定義,把__interface定義爲struct。

相關文章
相關標籤/搜索