一款全新的C++集成設置環境軟件(IDE) - CodeBlocks使用
1. 簡介
Code::Blocks,有時也簡單打成“CodeBlocks”,是一款全新的C++集成設置環境軟件(IDE)。
作為一款C++的IDE,Code::Blocks至少有以下幾點非常吸引我:
- 開源——開源不僅僅意味著免費,但就算是僅僅是免費這一點,就非常重要了,不是嗎?
- 跨 平臺——我的工作需要寫的C++程序,就要求是跨Linux和Windows平臺,沒有選擇Code::Blocks之前,我在Linux下用 KDevelop,在Windows下使用Borland 或 Microsoft的軟件,由于二者不兼容而要多做的事情太多。或許你暫時并不考慮跨平臺,但為了將來,能跨平臺總不是壞事,對了 Code::Blocks也支持Mac系統呢。
- 純 C/C++寫成——作為一名C++程序員,我“頑固”地保留一點可能并不必要的自尊:寫C++程序,還是用C++寫的IDE吧。讓我選擇一款以其它語言寫 成的IDE來寫C++程序,我有那么一點點完全不必要的心理障礙。其實用C++寫的程序最大好處是你不用額外安裝龐大的運行環境,譬如你不用裝.net也 不裝java。
- 支持多編譯器——包括Borland C++,、VC++、Inter C++等等超過20個不同產家或版本編譯器支持。無特定要求下,我還是主要用g++。配對的,調試器也是支持多種。
- 插 件式的框架——插件式的集成開發環境,最著名的是Java編程工具Eclipse了,這種方式讓一款IDE保留了良好的可擴展性,應該說,作為一款開源的 IDE,這是最合理的選擇。Code::Blocks很多核心功能,包括“調試功能”,都通過插件來實現。非核心方面的插件嘛,我用得最多的,是代碼格式 美化、自動上Google Codes查找……偶爾也會玩玩“俄羅斯方塊”以及“貪吃蛇”……
- 經常更新——幾乎每個月都會有更新。開源軟件最怕的就是不更新了。
- 內 嵌可視設計——和大家熟悉的VB、Delphi/C++Builder相比,它的可視窗口設計器,其“傻瓜性”差了一大截,其主要原因在在主流的跨平臺圖 形窗口的定位體系,都是采用定位“容器”來實現的,這一點一開始會不太習慣,但在熟悉之后,設計各種對話框,也非常直觀。一點點不直觀,換來的是你的程序 很容易遷移到別的操作系統,同時還讓你對窗口設計更深入了,倒也值。
- C++擴展庫支持——通過它的一個用以支持Dev C++的插件,可以下載大量C++開源的擴展庫。比如網絡操作,圖形算法,壓縮、加密等等……我現在最常用到一款就是iconv,用來轉換漢字編碼。擴展庫下載,及使用方法,請見本站相關課程。
- 多國語言——哈哈,有中文版,支持近40國語言,不過并不是默認支持的,本站對相關語言包進行了部分訂正及改進,語言包文件下載及使用方法請見本站相關課程。
- 眾 人的選擇——順便說一下,Code::Blocks進入“Sourceforge community choice award” 2008年度決賽了。“Sourceforge”是全球最大的開源社區,那這個賽事,可稱為“社區最佳選擇獎”,最終能不能獲獎不好說,不過確實有去投過 一票。能有很多用戶無私無利的支持以進入決賽,這自然也是我們選擇一個參考。
2. CodeBlocks 安裝、漢化
安裝
安裝環境:Linux,OpenSUSE 11.2
安裝步驟:
打開Yast
點擊進入“Package Search (webpin)”
在輸入框中輸入codeblocks
點搜索
從下面的列表中找到codeblocks這項,在前面打勾
點下一步。。。。。。
安裝過程中如提示導入證書,點“是”。
漢化
使用本地語言包
首先,請在 /usr/share/codeblocks/ 建立一個子文件夾:locale,注意 locale 全為小寫字母。
接著,下載d2school 版Code::Blocks語言包
下載地址:http://www.d2school.com/codeblocks/download/d2school_codeblocks_chinese_locale.7z
下載后,請解壓到前述的locale目錄下,則locale目錄下,應出現zh_CN和zh_TW兩個子目錄。
然后,重新啟動Code::Blocks,點擊主菜單的“Settings”,選擇“Enviornment”。出現的對話框中,左邊選中 “View”,右邊打勾 “Internationalization (needs restart)”,并在后面的復合框中選中“Chinese (Simplified)”。確認退出本對話框。
最后,重啟Code::Blocks。再看到的應該是中文簡體界面了。
3. CodeBlocks 使用教程
創建項目模板
在Code::Blocks中創建一項目,把你想要設置的項目屬性設置好,然后在菜單中選擇 文件->Save project as template... ,輸入模板名稱,然后點確定即可。
使用項目模板
在新建項目時,先點窗口左邊的“自定義模板”,然后就可以在右邊看到你創建的模板了,選擇你想要用的模板,點“出發”。
例如:DVSDK 項目模板
這里有一個已經做好的模板,適用于使用TI的DVSDK來開發的項目。在~/.codeblocks/UserTemplates/下面新建一個文 件夾(文件夾名就是你的模板名,例如dvsdk_2_10_Project),把剛剛創建的項目模板文件放入這個文件夾中就可以在新建項目時使用這個模板 了。
快捷鍵
1.說明:
以下需要設置的地方均在Settings->Editor...(設置->編輯器...)彈出的對話框中,左邊找到快捷鍵的圖標(如果沒找到,應該是沒有安裝codeblocks-contrib 包。
另外還有其他包,分別是:
libcodeblocks0
<li><p>codeblocks-dbg</p>
</li>
<li><p>codeblocks-dev</p>
</li>
<li><p>libwxsmithlib0-dev</p>
</li>
<li><p>libwxsmithlib0</p>
</li>
</ul>
</li>
</ul> </li>
不少命令都可針對當前行或選中的代碼塊,下文簡稱當前行或選中塊。
2.日常編輯
按住Ctrl滾滾輪,代碼的字體會隨你心意變大變小,對保護視力特別有好處。
在編輯區按住右鍵可拖動代碼,省去拉(尤其是橫向)滾動條之麻煩;相關設置:Mouse Drag Scrolling。
Ctrl+D可復制當前行或選中塊。
Ctrl+Shift+C注釋掉當前行或選中塊,Ctrl+Shift+X則解除注釋。
Tab縮進當前行或選中塊,Shift+Tab減少縮進。
可拖動選中塊使其移動到新位置,按住Ctrl則為復制到新位置。
按下Atl,再拖動鼠標,可以實現部分選擇(即只選中一個區域內的字符,而不會包含它們所在行的其他字符)。
需要更大編輯空間時,F2和Shift+F2分別可以顯隱下方Logs & others欄和左方的Management欄。
3.自動完成與縮寫
1. 優化代碼自動完成功能:在Code-completion and symbol browser中,
將Automatically launch when typed # letter中的4改成2,這樣打兩個字母就會有提示了。
將Keyword sets to additionally include中1到9都勾上(可在Syntax highlighting 的keywords...中設置,其中1是C++關鍵字,3是Doxygen關鍵字;我曾將wxWidgets的類名都加入7并設置相應的字體(粗黑 體),看代碼時特別爽)
將Delay for auto-kick-in when typing [.::->]拉到 200ms,這樣快點出來提示
選中Case-sensitive match,防止一些無關的東西干擾,如果你想它幫你糾正大小寫,那就去掉勾
在Keyboard short-cuts中將Edit->Code complete的快捷鍵由Ctrl+Space改為Alt+/,因為前者與中文輸入法切換沖突,該快捷鍵為已經輸入的(不是正在輸入的)詞提供自動完成。
2. 看Abbreviation一欄,里面定義了許多縮寫(還可以自定義),只要輸入這些縮寫,并按Ctrl+J,就可以自動完成常用的代碼框架,并將光標放在恰當的地方(自定義時用|表達)。常用的有:guard、class、switch等。
3. 如果你聲明了一個類,你可以在cpp文件中右擊,Insert->All class methods without implementation...來插入你還沒定義的方法的定義(省去不少打字的功夫哦),也可使用Insert->Class Method declaration/implementation...來插入一個方法的聲明或定義。
4.導航相關
Ctrl+G 到達指定行,ALT+G 到達指定文件,Ctrl+Alt+G 到達指定函數(支持頭文件中的函數定義),F11 切換源文件與頭文件。
Ctrl+PageUp 到達上一個函數,Ctrl+PageDown 到達下一個函數。
Ctrl+B 添加書簽,Alt+PageUp和Alt+PageDown可以切換書簽。
Ctrl+Shift+B可找到匹配的括號。
看長代碼時,可右擊,Folding->Fold All,然后慢慢展開來看,也可充分利用左方Management欄的Symbol瀏覽器。
在一個變量、函數或宏上右擊,三個以Find開頭的菜單項,分別可以為你轉到它的聲明、定義和找到所有出現的地方(按F2在下方Thread Search那里查看)。
5.其他
General Settings中可以設置縮進、自動換行等細節。
讓Code::Blocks永遠記住你的Layout,尤其是debug的layout,善用debug工具欄。
備份~/.codeblocks/Default.conf,如遇重裝,將其放回此目錄,就不會丟失你的配置;這樣也可以打造出 Code::Blocks的綠色版。 Ctrl+L 剪切選中行 F11 切換源文件與頭文件 F10 全屏 Ctrl+Shift+B 括號匹配 按下ATL,再拖動鼠標,可以實現部分選擇
Ctrl+B 添加書簽,ALT+PageUp和PageDown可以切換書簽。 Ctrl+G 到達指定行 ALT+G 到達指定文件 Ctrl+Alt+G 到達指定函數(支持頭文件中的函數定義)
Ctrl+PageUp 到達上一個函數
Ctrl+PageDown 到達下一個函數
還有一個比較健全的介紹:http://www.d2school.com/codeblocks/doc/codeblocks_setup.html
</ul>