利用Eclipse CDT 閱讀C/C++程式碼
常見閱讀程式碼的工具有 , visual c++, visual studio + va(visual assistant), 以及 source insight, 這幾個功能強大的收費軟體 , 目前用得非常多 , 尤其是 Source Insight( 以下簡稱 SI), 是一個不錯的跨平臺的軟體 . 今天推薦的 Eclipse C++ 版本 , 同樣也是一個優秀的開源閱讀程式碼的工具 , 其優越性有甚於 SI, 表現在以下幾點 .
1. 支援正規表示式快速定位原始檔 (SourceInsight 不支援快捷萬用字元 ) ,
2. 快速發現類之間的繼承關係 , 並圖形化顯示 (vs2005 和 sourceInsight 無此功能 ) ,
3. 快速找到函式間的呼叫關係 (SourceInsight 無此功能 ).
4. 其它 SourceInsight 提供的功能基本都支援得不錯 .
5. 開源並且免費
6. 跨平臺軟體
首先展示一下這幾大不錯的功能 .
1. 支援正規表示式定位資原始檔 .
如圖 , 支援正規表示式 ( 如 * 萬用字元 ) 的方式查詢檔案 ( 快捷鍵 ctrl+shift+R).
2. 快速發現類之間的繼承關係 , 並圖形化顯示
如圖 : 選擇類名稱 , 然後按 (ctrl+T)
3. 快速找到函式間的呼叫關係
選擇函式名稱 , 然後按 (ctrl+ALT+ H)
4. 刷選一個 .h 或者 .cpp 檔案中的函式名稱或者全域性變數
Eclipse CDT 提供了類似 SI 的 Outline 視窗,可以看到全部的原始檔的結構 , 除此之外,還可以提供給一個可刷選的彈出框 , 同樣也可以接受正規表示式 :
5. 總結 , 優點 .
a) 順推方式下 , SI 和 Eclipse CDT 的功能上沒有區別
b) 回溯方式 Eclipse CDT 優於 SI( 查詢父類 , 查詢呼叫關係 )
c) 免費和跨平臺
原始碼閱讀過程
如果需要分析原始檔,可以按照以下步驟來進行 :
1. 建立一個空的 C/C++ 工程
2. Import 待分析原始檔的路徑位置 :
然後選中位置 :
3. 點選 Finish 之後,原始碼分析就開始了 , 這樣的分析可以透徹到任何檔案,包括二進位制的 DLL 檔案 .
4. 待檔案分析完畢 , 即可以對原始碼進行閱讀 . 可以匯入不同位置的原始碼
5. 在 VS/VC 的工作環境中 , 可通過 Eclipse CDT 編寫原始碼, 利用 VS 編譯執行。
快捷鍵總結
1. 查詢宣告 : F3 ( 或者 Ctrl 加滑鼠左鍵點選 )
2. 標頭檔案和原始檔切換 . Ctrl +Tab
3. 檢視類繼承關係圖 Ctrl +T
4. 查詢原始檔 Ctrl +Shift+R
5. 查詢欄位 Ctrl +H
6. 查詢檔案的函式或者全域性變數 Ctrl +O
7. 查詢被引用的位置 Ctrl + Shift + G
延伸閱讀:
相關文章
- 用emacs 閱讀 c/c++ 程式碼MacC++
- Eclipse CDT 匯入 Makefile 構建的 C/C++ 工程EclipseC++
- mac下c++程式碼閱讀工具MacC++
- 如何閱讀別人的C/C++程式碼C++
- 使用Source Insight閱讀C++程式碼C++
- 閱讀C++原始碼必備C++原始碼
- C++:小說閱讀器C++
- C++程式設計師的閱讀清單C++程式設計師
- windows下 使用ADT Bundle自帶Eclipse 配置Cygwin、CDT進行C/C++開發過程WindowsEclipseC++
- 閱讀程式碼就像閱讀猶太法典
- 如何利用 C++ 的 Lambda 表示式提升 Qt 程式碼C++QT
- ubuntu+eclipse+cdt+boost環境搭建UbuntuEclipse
- C++11標準後的C++閱讀書目C++
- 《Effective C++》閱讀總結(三):資源管理C++
- 《C++ 沉思錄》閱讀筆記——代理類薦C++筆記
- 解決 eclipse cdt 執行時控制檯亂碼解決Eclipse
- 轉_如何閱讀程式碼
- 個人閱讀 程式碼大全的閱讀與提問
- C庫原始碼閱讀(快速定位原始碼)原始碼
- c++ primer 第二章閱讀筆記C++筆記
- 【原始碼閱讀】AndPermission原始碼閱讀原始碼
- 命名&可閱讀的程式碼
- 如何閱讀大型程式碼庫?
- TaxoRec部署與程式碼閱讀
- 從 C/C++ 程式呼叫 Java 程式碼C++Java
- 如何閱讀他人的程式程式碼[轉]
- 解讀第一個C++程式C++
- 優化C++程式碼(2):C++程式碼的編譯過程優化C++編譯
- 做一個程式碼閱讀器
- 程式碼大全 閱讀與提問
- 也談如何閱讀程式原始碼原始碼
- C#文字閱讀C#
- 《Effective C++》閱讀總結(四): 設計、宣告與實現C++
- C++程式碼閱讀筆記(一)筆記
- 閱讀《程式碼整潔之道》總結
- FPGA學習中的程式碼閱讀FPGA
- FFMpeg框架程式碼閱讀 - [3DTV]框架3D
- C++學習程式碼--sizeofC++