版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
筆者打算用兩篇日志來完畢對Code::Blocks手冊前二章的編譯,分別是:使用篇、插件篇。本文是第一篇:Code::Blocks使用篇。原手冊第三章介紹Code::Blocks變量、腳本的使用,第四章介紹如何從源碼編譯Code::Blocks,這兩章內(nèi)容不是諸多,筆者認(rèn)為對大部分顧客協(xié)助不是不大,暫不打算翻譯。筆者使用的Code::Block版本是nightlybuilds,svn6088(能夠在這個地址下載:,11875.0.html)。使用的編譯器是GCC3.4.5。每個版本之間的使用可能會有細(xì)微的差別。Code::Blocks手冊Version1.0感謝CodeBlocks項目組:AndersF.Bjorklund(afb),BiplabKumarModak(biplab),Bartomiejwiecki(byo),PaulA.Jimenez(ceniza),KoaChongGee(cyberkoa),DanielOrb(daniel),LievendeCock(killerbot),YiannisMandravellos(mandrav),Mispunt(mispunt),MartinHalle(morten-macy),JensLody(jens),JeromeAntoine(dje),DamienMoore(dmoore),PecanHeber(pecan),RicardoGarcia(rickg22),ThomasDenk(thomasdenk),tiwag(tiwag)Permissionisgrantedtocopy,distributeand/ormodifythisdocumentunderthetermsoftheGNUFreeDocumentationLicense,Version1.2oranylaterversionpublishedbytheFreeSoftwareFoundation.1CodeBlocks項目管理下圖是CodeBlocks運(yùn)行時的顧客界面:管理(Management):管理窗口包含Project視圖與Symbols視圖。Project視圖顯示現(xiàn)在CodeBlocks打開的全部項目(譯者注:類似與VS解決方案資源管理器);Symbols視圖顯示項目中的標(biāo)記符:類,函數(shù)、變量等信息(譯者注:類似與VS的類視圖)。代碼編輯器:支持代碼折疊,核心字高亮顯示。上圖main.cpp正在被編輯。打開文獻(xiàn)列表:顯示現(xiàn)在在代碼編輯器中打開的全部文獻(xiàn)列表。上圖中打開的文獻(xiàn)列表為:main.cpp,person.cpp,person.hpp代碼段(CodeSnippets):管理慣用的代碼段、慣用文獻(xiàn)鏈接(linkstofiles)與URL。能夠通過菜單View->CodeSnippets來顯示該面板。日志和其它:這個窗口用于輸出日志信息,顯示查詢成果等等。狀態(tài)欄提供了下列這些信息:編輯器中打開文獻(xiàn)的絕對途徑;文獻(xiàn)的編碼類型;光標(biāo)所在的行與列;現(xiàn)在的鍵盤模式(insert或者overwrite);現(xiàn)在的文獻(xiàn)狀態(tài)。被修改正的(但尚未保存)文獻(xiàn)將被標(biāo)記為“modified”,否則這里為空;文獻(xiàn)操作的權(quán)限。如果文獻(xiàn)是只讀的,這里將會顯示“Readonly”,在Openfileslist中,該文獻(xiàn)會使用一種加瑣的圖標(biāo)來顯示;個性化配備名稱;CodeBlocks提示了非常靈活和強(qiáng)大的項目管理功效。下文將介紹項目管理的某些慣用功效。項目視圖(ProjectView)在CodeBlocks中,Project的源文獻(xiàn)(如C/C++的源文獻(xiàn)及其對應(yīng)的頭文獻(xiàn))和編譯屬性設(shè)立信息都保存在<name>.cbp文獻(xiàn)里。能夠通過菜單[File–>Project]啟開工程創(chuàng)立向?qū)韯?chuàng)立新的Project,然后通過管理窗口的上下文菜單[Addfiles](譯者注:上下文菜單,指現(xiàn)在窗口中選中目的項目,然后右鍵顯示的菜單)向Project中添加文獻(xiàn)。CodeBlocks會自動根據(jù)文獻(xiàn)的后綴將它們放入不同的類別文獻(xiàn)夾中(譯者注:這個文獻(xiàn)夾是虛擬的,實際并不存在)。下面是默認(rèn)的分類:Sources:包含源文獻(xiàn),后綴為*.c、*.cpp;ASMSources:涉及匯編源文獻(xiàn),后綴普通為*.s、*.S、*.ss、*.asm;Headers:涉及頭文獻(xiàn),后綴普通為*.h、*.hpp;Resources:涉及資源文獻(xiàn),后綴普通為*.res、*.xrc;通過管理窗口的上下文菜單[Projecttree–>Editfiletypes&categories],顧客能夠新建自定義的文獻(xiàn)類別,并為其對應(yīng)的后綴。例如,如果你但愿*.ld的文獻(xiàn)放到Linkerscript的分類里,你只需新建類別Linkerscript,并為它指定*.ld后綴即可。提示:如果你取消選中管理窗口上下文菜單的[Projecttree–>Categorizebyfiletypes]選項,全部的項目文獻(xiàn)將會按它們在文獻(xiàn)系統(tǒng)中的位置來顯示。1.2項目備注(NotesforProjects)能夠給CodeBlocks項目添加某些備注,用于對項目進(jìn)行概要的描述與闡明,這些信息有助于其它組員快速的理解項目。備注信息被保存在項目工程文獻(xiàn)里,并能夠設(shè)立為隨著項目的啟動而顯示。如圖:1.3項目模板CodeBlocks支持許多不同類型的項目模板,它們會在新建項目的時候顯示,創(chuàng)立新項目的時候往往從這些模板中選擇(如上圖:)。顧客能夠自定義工程模板。工程模板保存編譯器的類型、編譯選項、資源的配備等有關(guān)信息。項目模板保存在DocumentsandSettingsn\<user>\ApplicationData\codeblocks\UserTemplates目錄中。如果你但愿該工程模板被本機(jī)的全部顧客使用,必須把對應(yīng)的模板文獻(xiàn)拷貝到CodeBlocks的安裝目錄。模板在CodeBlocks重啟之后生效,通過菜單[New->Project->Usertemplates]就能夠看到自定義的模板。提示:顧客能夠通過右鍵選中工程向?qū)е械哪0鍖ζ溥M(jìn)行編輯。以下圖:1.4從編譯模式創(chuàng)立項目(CreateProjectsfromBuildTargets)一種項目往往有不同的編譯模式,最常見的是Release和Debug。不同的編譯模式表達(dá)用于構(gòu)建現(xiàn)在項目所使用的不同編譯器選項、調(diào)試信息或者依賴的文獻(xiàn)。每一種編譯模式都能夠被保存成獨立的工程文獻(xiàn)。通過上下文菜單[Project->Properties],在BuildTargets標(biāo)簽中點擊“Createprojectfromtarget”按鈕來生成對應(yīng)編譯模式的工程文獻(xiàn),如圖:1.5編譯模式(VirtualTargets)一種項目能夠有多個不同的編譯模式,最慣用的編譯模式為“Debug”和“Release”?!癉ebug”模式下會包含許多Debug信息,而“Release”模式下沒有這些信息。也能夠通過上下文菜單[Project->Properties->BuildTargets]添加其它的編譯模式。編譯模式將顯示在工具欄中:1.6預(yù)生成和生成后環(huán)節(jié)(Pre-andPostbuildsetps)Code::blocks允許在項目生成前和生成后執(zhí)行額外的操作,這些操作分別被稱為預(yù)生成(Prebuilt)或生成后(Postbuilt)環(huán)節(jié)。下面是典型的生成后環(huán)節(jié):(譯者注:筆者對低層的東西懂得的不多,不是很清晰下面這些環(huán)節(jié)的意思。)CreatinganIntelHexformatfromanishedobjectManipulatingobjectsbyobjcopyGeneratingdumplesbyobjdump1.7為構(gòu)建目的添加腳本(AddingScriptsinBuildTargets)Code::Blocks允許使用腳原來調(diào)用菜單命令,控制項目的生成。提示:腳本能夠被包含到一種構(gòu)建目的(BuildTarget)中。1.8解決方案(Workspace)與項目依賴CodeBlocks能夠同時打開多個項目,通過菜單[File->Saveworkspace]把它們集成到一種解決方案中,并生成一種對應(yīng)的解決方案文獻(xiàn)(<name>.workspace)。下次打開解析方案文獻(xiàn)(<name>.workspace)時,這些項目會被一起加載進(jìn)來。復(fù)雜的軟件系統(tǒng)普通由不同的模塊、組件以獨立的工程項目構(gòu)成,它們之間往往存在依賴關(guān)系。例如:項目A以庫(library)的形式提供某些公用函數(shù)給其它項目調(diào)用,如果項目A中的源代碼被修改,這個庫就得重新編譯。項目B使用項目A中實現(xiàn)的函數(shù),那么項目B就依賴項目A。CodeBlocks把這些項目依賴的信息保存到解決方案文獻(xiàn)中,因此解決方案中的工程能夠各自獨立的創(chuàng)立、編譯而不互相影響(譯者注:由解決方案文獻(xiàn)來維護(hù)各項目的依賴關(guān)系)。這些依賴關(guān)系會決定項目的生成次序。通過菜單[Project->Properties],然后選擇[Project’sdependencies]按鈕來設(shè)立項目之間的依賴關(guān)系。以下圖:1.9包含匯編文獻(xiàn)略。1.10代碼編輯器與工具(EditorandTools)1.10.1默認(rèn)代碼(DefaultCode)公司的編碼規(guī)范往往規(guī)定源文獻(xiàn)有統(tǒng)一的布局(譯者注:例如源文獻(xiàn)的開始處以統(tǒng)一的格式給出文獻(xiàn)創(chuàng)立的時間、作者、實現(xiàn)的功效描述等有關(guān)信息)。CodeBlocks允許預(yù)定義某些內(nèi)容,當(dāng)新建C/C++文獻(xiàn)時這些內(nèi)容會自動添加到文獻(xiàn)的開始處。這里把預(yù)定義的內(nèi)容稱為defaultcode。能夠通過菜單[Settings–>Editor–>DefaultCode]來設(shè)立defaulgcode,通過菜單[File->New->File]創(chuàng)立的代碼文獻(xiàn)將自動添加上defaultcode。例如:/**************************************************************************Project:*Function:**************************************************************************$Author:mario$*$Name:$***************************************************************************Copyrightbycompanyname*************************************************************************/1.10.2縮寫(Abbreviation)定義一種慣用的代碼片斷[typing],并給它提供一種名字[Abbreviation],在寫程序的時候,只要給出這個名字,然后按快捷鍵Ctrl+J,CodeBlocks就會用預(yù)先定義的代碼片斷來替代該名字。(譯者注:VS中也有類似的功效,在C#程序時,只要寫出核心字for,然后持續(xù)按兩次Tab鍵,編輯器會自動生成for語句的框架,是不是很方便?~_~)。通過菜單[Settings->Editor]來設(shè)立Abbreviation,以下圖:abbreviation也支持參數(shù)變量(Parametrisation)(如:$NOW表達(dá)現(xiàn)在時間)。如:-->1.10.3個性化(Personalities)CodeBlocks的配備信息被作為應(yīng)用程序數(shù)據(jù)而保存在codeblocks文獻(xiàn)夾的<user>.conf文獻(xiàn)中。該配備文獻(xiàn)中保存的信息涉及:上次打開的項目、代碼編輯器的設(shè)立、符號欄顯示等等。默認(rèn)的個性化設(shè)立被保存在default.conf文獻(xiàn)中。通過命令行參數(shù)-personality=myuser來調(diào)用CodeBlocks,配備信息將被保存到myuser.conf中。如果該文獻(xiàn)不存在,系統(tǒng)將自動創(chuàng)立它。如果以命令行的方式來啟動CodeBlocks,并傳遞命令參數(shù)--personality=ask,將會顯列出現(xiàn)在全部的修改化配備列表,顧客選擇其一啟動CodeBlocks。以下圖:1.10.4配備文獻(xiàn)(ConfigurationFiles)CodeBlocks的配備信息保存在codeblocks目錄下的default.conf文獻(xiàn)中。當(dāng)使用個性化設(shè)立的時候,配備信息將被保存到<personality>.conf文獻(xiàn)里。cb_share_conf(一種輔助工具,能夠在CodeBlocks安裝目錄里找到)被用來管理與保存這些設(shè)立信息。如果你想為電腦的不同賬戶定義一種公用的默認(rèn)設(shè)立,defual.conf文獻(xiàn)應(yīng)當(dāng)被保存到\DocumentsandSettings\DefaultUser\ApplicationData\codeblocks。CodeBlocks在第一次啟動的時候,會將該配備文獻(xiàn)拷貝到現(xiàn)在賬戶的applicationdata目錄下(并作為現(xiàn)在帳戶的配備文獻(xiàn))。如果想在usb設(shè)備上創(chuàng)立一種綠色版本號的CodeBlocks,請執(zhí)行下面環(huán)節(jié):將CodeBlocks安裝目錄拷貝到usb設(shè)備上,將配備文獻(xiàn)default.conf拷貝到該目錄中,該配備文獻(xiàn)將被用于全局的設(shè)立。確保系統(tǒng)有權(quán)限對該文獻(xiàn)進(jìn)行寫入,否則CodeBlocks對配備文獻(xiàn)的修改將不會被保存。1.10.5導(dǎo)航與搜索(NavigateandSearch)CodeBlocks提供了諸多辦法用于文獻(xiàn)和函數(shù)之間導(dǎo)航。書簽就是最慣用的一種方式。通過快捷鍵Ctrl+B在源文獻(xiàn)中設(shè)立/刪除一種書簽,通過Alt+PgUp或Alt+PgDn在不同的書簽之間跳轉(zhuǎn)。在管理窗口的Project視圖中選中解決方案或項目,右鍵點擊在彈出菜單中選擇[Findfile],輸入你查找的文獻(xiàn)名稱,然后回車,該文獻(xiàn)將被選中(如果文獻(xiàn)存在的話),再按回車,編輯器就會打開該文獻(xiàn)。以下圖:在CodeBlocks中,你能夠很容易的在頭文獻(xiàn)與源文獻(xiàn)之間導(dǎo)航:1.將光標(biāo)置于頭文獻(xiàn)被包含處(例如:#include“header.hpp”),右鍵選擇性“openincludefile”,編輯器將打開該包含文獻(xiàn)。(譯者注:能夠在VS中使用快捷鍵Ctrl+Shift+G實現(xiàn)同樣的操作。這個功效非常方便,特別是要查看源代碼時。)2.通過右鍵菜單的[Swapheader/source],在頭文獻(xiàn)與源文獻(xiàn)之間切換。3.選中一種定義(如變量名,類型名等等),在右鍵菜單中選擇[Finddeclaration],編輯器就會打開該定義的聲明。(譯者注:能夠使用右鍵菜單的[Findimplementation]定位到函數(shù)的實現(xiàn)處,在VS中使用快捷鍵F12實現(xiàn)同樣的操作。這也是一種非常方便的功效。)。CodeBlocks提供多個方式用于對單個文獻(xiàn)或整個目錄進(jìn)行搜索。通過菜單[Search->Find]或[Search–>FindinFiles]來打開搜索對話框。Alt+G和Ctrl+Alt+G這兩個快捷鍵用于打開文獻(xiàn)/函數(shù)跳轉(zhuǎn)對話框,只要輸入文獻(xiàn)/函數(shù)的名稱,就能夠很方便的跳轉(zhuǎn)到指定文獻(xiàn)或函數(shù)。文獻(xiàn)名/函數(shù)名搜索還支持*和?等能配符。(譯者注:能夠使用VisualAssist插件在VS中實現(xiàn)類似的功效。這兩個功效真的很方便實用。)提示:使用Ctrl+PgUp和Ctrl+PgDn能夠在前后函數(shù)之間跳轉(zhuǎn)。在文本編輯器中,使用快捷鍵Ctrl+Tag能夠在現(xiàn)在全部打開的文獻(xiàn)之間跳轉(zhuǎn)。(譯者注:VS也有類似的功效,并且快捷鍵也是Ctrl+Tag,這是巧合嗎?)顯示行號。通過菜單[Settings->GeneralSettings],選中[Showlinenumbers]來顯示行號。使用快捷鍵Ctrl+G能夠快速的跳轉(zhuǎn)到指定行。1.10.6符號視圖(Symbolview)CodeBlocks管理窗口提供的符號視圖,以樹的形式顯示(導(dǎo)航)C/C++源文獻(xiàn)中的類、函數(shù)、變量定義。能夠選擇符號顯示的區(qū)域是:現(xiàn)在文獻(xiàn)、現(xiàn)在項目、整個解決方案。(譯者注:與VS的類視圖面板實現(xiàn)類似的功效。)提示:在搜索輸入框中輸入符號的名稱,符號瀏覽器將會過濾不符條件的符號。符號視圖將符號分為以下分類:Globalfunctions:全局函數(shù);Globaltypedefs:通過typedef定義的別名;Globalvariables:全局變量;Preprocessorsymbols:通過#define宏定義的預(yù)解決批示符;構(gòu)造和類的定義顯示在pre-processorsymbols下面。如果一種分類被選中,屬于該分類的標(biāo)記符將顯示在視圖的下半部分。雙擊這些標(biāo)記符,代碼編輯器將定位到定義這些標(biāo)記符的文獻(xiàn)所在處。1.10.7集成外部的協(xié)助文檔CodeBlocks支持添加外部的協(xié)助文檔集成到開發(fā)環(huán)境中。通過菜單[Settings->Environment]來設(shè)立。把你選擇的chm格式的文檔以添加到HelpFiles,并將其作為默認(rèn)的協(xié)助文檔,在編輯器中選擇一種函數(shù),對應(yīng)的文檔就會出現(xiàn)通過快捷鍵F1。…1.10.8集成外部工具通過菜單[Tools->ConfigurationTools–>Add],把外部工具集成到CodeBlocks開發(fā)環(huán)境中。這些外部的工具允許以參數(shù)的形式訪問CodeBlocks的內(nèi)建(Built-in)變量(如現(xiàn)在項目所在的文獻(xiàn)夾${PROJECT_DIR})。運(yùn)用這個功效,我們給CodeBlocks添加一種菜單項:打開現(xiàn)在項目所在的文獻(xiàn)夾。請看圖:(譯者注:這是一種非常實用的功效。運(yùn)用這個功效,我在我的CodeBlocks中,添加了三個我最慣用的菜單項:使用Notepad++打開現(xiàn)在文獻(xiàn);打開現(xiàn)在項目所在的文獻(xiàn)夾;以Dos窗口打開現(xiàn)在文獻(xiàn)夾。爽歪歪~~)1.11使用CodeBlocks的小提示(Tips)這節(jié)我們將展示某些CodeBlocks非常有用的提示。1.11.1修改跟蹤(TrackingofModifications)CodeBlocks通過行號旁邊的小堅條顏色來跟蹤源文獻(xiàn)的修改。未保存的修改行將被標(biāo)記為黃色,而已保存的修改行標(biāo)記為綠色。你能夠通過菜單[Search->Gotonextchangedline]或者[Search->Gotopreviouschangedline]在修改內(nèi)容之間導(dǎo)航(對應(yīng)的快捷鍵是Ctrl+F3和Ctrl+Shift+F3)。(譯者注:VS也提供類型的功效。)能夠通過菜單[Settings->Editor->Marginsandcaret],取消選中[UseChangebar]來取消該功效。提示:如果文獻(xiàn)被關(guān)閉,統(tǒng)計在該文獻(xiàn)上的undo/redo信息和修改標(biāo)記(changebars)將會清空。如果文獻(xiàn)解決打開狀態(tài),能夠通過菜單[Edit->Clearchangeshistory]或者右鍵菜單對應(yīng)選項來顯式地清空這些信息。1.11.2與其它應(yīng)用程序交互CodeBlocks能夠在運(yùn)行時與其它應(yīng)用程序進(jìn)行交互。windows下通過DDE(DynamicDataExchange)實現(xiàn)這種進(jìn)程間的交互,而在其它操作系統(tǒng)下,基于TCP來實現(xiàn)交互。下列語法的命令能夠發(fā)送給CodeBlocks運(yùn)行實例:[<command>(“<parameter>”)現(xiàn)在能夠使用的命令:Open:命令[Open(“D:\Temp\test.txt”)],在CodeBlocks實例中(或者啟動新的CodeBlocks進(jìn)程,如果需要的話)打開一種文獻(xiàn)。OpenLine:命令[OpenLine(“D:\Temp\test.txt:10”)],在CodeBlocks中打開文獻(xiàn),并定位到指定行數(shù),冒號背面的數(shù)字用于指定行號。(譯者注:不是很明白原文的意思:ThiscommandopensaleatagivenlinenumberinaCodeBlocksinstance.)Raise:讓CodeBlocks實例獲得焦點。不就給該命令提供參數(shù)。1.11.3配備環(huán)境變量操作系統(tǒng)的配備信息被定義在環(huán)境變量中。例如環(huán)境變量Path包含一種編譯器的安裝目錄途徑,操作系統(tǒng)在運(yùn)行期間都能夠隨時訪問該環(huán)境變量。如果同一編譯器的另一種版本被安裝,就可能會發(fā)生錯誤,如:調(diào)用的編譯器版本不對的。有時候由于項目的需要,必須在同一機(jī)器上安裝同一編譯器的不同版本。為了避免上述錯誤的發(fā)生,能夠在項目啟動之前修改環(huán)境變量。顯然,這個辦法很容易出錯,很不靈活?;谶@個問題,CodeBlocks提供了一種簡樸的解決辦法:創(chuàng)立不同版本的、只能在CodeBlocks內(nèi)使用的環(huán)境變量,然后根據(jù)項目的需要選擇適宜的版本環(huán)境變量。通過菜單[Settings->Environment],在EnvironmentVaribales面板中點擊Create按鈕創(chuàng)立不同版本的環(huán)境變量,以下圖:1.11.4切換布局CodeBlocks能夠根據(jù)手頭任務(wù)的需要選擇不同的配備/視圖,并保存這些配備/視圖。默認(rèn)狀況下這些配備保存在default.conf文獻(xiàn)里。以命令行方式啟動Cdoeblocks,并傳遞--personality=ask參數(shù),就能夠在列出的個性化配備列表中選擇一種視圖啟動。有時候,你可能但愿在應(yīng)用程序的使用過程中切換布局,如編碼模式與調(diào)試模式下可能需要不同的布局。CodeBlocks提供了一種機(jī)制來實現(xiàn)這種需求,通過菜單[View->Layouts->Savecurrent],并輸入布局的命名,保存布局。通過[View->Layouts->Layoutname]來切換布局。(譯者注:筆者使用的版本,通過[View->Perspectives]來保存\切換布局,以下圖:)1.11.5項目切換多個項目同時在CodeBlocks中打開時,顧客但愿快速的在這些項目之間切換。CodeBlocks提供一組快捷鍵來實現(xiàn):Alt+F5:將視圖中前一種項目設(shè)為激活(Active)項目。(譯者注:類似于VS中將某個項目設(shè)為啟動項目。)Alt+F6:將視圖中后一種項目設(shè)為激活項目。F11:在編輯器中切換源文獻(xiàn)(name.cpp)和頭文獻(xiàn)(name.h)。1.11.6擴(kuò)展編譯器設(shè)立在編譯一種項目的過程中,編譯信息將會顯示在消息窗口的BuildLog視圖中。如果你想獲取更具體的編譯信息,通過菜單[Settings->CompilerandDebugger],在OtherSettings面板中選擇Compilerlogging下拉列表項:“Fullcommandline”選項意味著將在BuildLog視圖中顯示全部的編譯信息。能夠?qū)⑦@些日志信息保存為HTML文獻(xiàn),通過選中”SavebuildlogtoHTMLfilewhenfinished’。另外,通過選中”Displaybuildprocessbar”,CodeBlocks支持在BuildLog視圖中顯示編譯進(jìn)度。1.11.7編輯器縮放CodeBlocks提供了一種非常高效的編輯器。這個編輯器允許你縮放打開文本的字體大小。如果你的鼠標(biāo)有滾輪,你只要按住Ctrl鍵,同時滾支鼠標(biāo)滾輪,就能夠?qū)崿F(xiàn)文本的縮放。提示:通過菜單[Edit->Specialcommands->Zoom->Reset]來重置縮放。1.11.8自動換行模式在CodeBlcoks中打開一種文本文獻(xiàn),使用自動換行模式能夠?qū)⒑荛L的行以多行的形式顯示在一種屏幕內(nèi),有助于編輯。通過菜單[Settings->Editor->OtherOptions],選中Wordwarp來激活自動換行模式?!?.11.9塊選文本CodeBlocks支持在代碼編輯器中塊選文本。按住Alt鍵的同時按住鼠標(biāo)左鍵在編輯器選擇一塊區(qū)域。如果你想選擇數(shù)組的幾列進(jìn)行復(fù)制和粘貼,這個功效是非常有用的(譯者注:VS也提示類似的功效,快捷鍵也同樣。)。如圖:1.11.10代碼折疊CodeBlocks支持代碼折疊,允許將函數(shù)、類的實現(xiàn)折疊起來。提示:通過菜單[Settings->Editor->Folding],能夠設(shè)立代碼折疊的樣式和層次限制(depthlimit)。1.11.11自動完畢在CodeBlocks中打開一種項目時,編譯器的有關(guān)目錄(include目錄)與項目的源文獻(xiàn)/頭文獻(xiàn)將被解析,提取有關(guān)類型定義、函數(shù)、宏等的信息,CodeBlocks使用這些信息來實現(xiàn)自動完畢功效。通過菜單[Settings->Editors->Codecompletion]啟用該功效,通過快捷鍵Ctrl+Space來顯示提示信息(譯者注:默認(rèn)的快捷鍵Ctrl+Space不適合中國人的鍵盤習(xí)慣,建議改成其它快捷鍵。)。通過[Settings->Editor->Syntaxhighlighting],你能夠添加自定義的核心字。1.11.12查找破損文獻(xiàn)(Findbrokenfiles)如果一種文獻(xiàn)已經(jīng)從磁盤中刪除,但它仍然被包含在項目文獻(xiàn)(project.cbp)中(譯者注:項目的文獻(xiàn)信息保存在*.cbp文獻(xiàn)里。),這個文獻(xiàn)在項目面板中顯示一種破損符號(以下圖)。應(yīng)當(dāng)通過上下文菜單[Removefilefromproject]將它從項目中移除。一種大的工程可能包含許多子文獻(xiàn)夾,搜索破損文獻(xiàn)會非常耗費(fèi)時間。CodeBlocks提供ThreadSearch插件來解決這個問題。在ThreadSearch中輸入要查找的體現(xiàn)式,并設(shè)立查找的范疇:“Projectfiles”或者“Workspacefiles”,ThreadSearch將會分析全部涉及在項目或者解決方案中的文獻(xiàn)。當(dāng)ThreadSearch找到一種跋損文獻(xiàn)的時候,會發(fā)出一種文獻(xiàn)丟失的錯誤。1.11.13包含庫在項目的編譯選項中,你能夠通過”Add”按鍵添加項目所使用的庫。庫能夠以絕對途徑的形式給出,也能夠只給出名稱而無需提供lib前綴和文獻(xiàn)擴(kuò)展名。例如:存在這樣的一種庫文獻(xiàn):<path>\libs\lib<name>.a,只要給出<name>,鏈接器就能夠找到對應(yīng)的庫文獻(xiàn)。1.11.14對象鏈接次序在編譯過程中,源文獻(xiàn)name.c/cpp將會被編譯成目的文獻(xiàn)name.o,然后鏈接器把獨立的目的文獻(xiàn)鏈接成可執(zhí)行文獻(xiàn)name.exe(對于嵌入式系統(tǒng),將鏈接成name.elf)。這種狀況下,可能需要預(yù)先定義對象鏈接的次序。在CodeBlocks中,能夠設(shè)立有關(guān)源文獻(xiàn)的優(yōu)先級來實現(xiàn)。在上下文菜單中選擇[Properties],在Build標(biāo)簽中定義。較低優(yōu)先級使文獻(xiàn)較先鏈接。1.11.15自動保存CodeBlcoks允許自動保存現(xiàn)在正在編輯的文獻(xiàn)和項目,或者對它們進(jìn)行備份。能夠通過菜單[Settings->Environment->Autosave]來激活該功效。1.11.16文獻(xiàn)擴(kuò)展名設(shè)立在CodeBlocks中,能夠選擇多次方式來解決文獻(xiàn)不同后綴的文獻(xiàn),能夠在菜單[Settings->Environmentsettings->Filesextensionhandling]設(shè)立對應(yīng)的解決方式:“Launchanexternalprogram”指定外部程序來打開文獻(xiàn);“Launchtheassociatedapplication”使用系統(tǒng)默認(rèn)程序來打開文獻(xiàn);“OpenitinCode::Blockseditor”使用Code::Blocks編輯器來打開文獻(xiàn)。以下圖:1.12通過命令行操作CodeBlocksCodeBlocks能夠通過命令行來運(yùn)行。在這種狀況下,需要通過某些選項來控制項目的構(gòu)建過程。由于CodeBlocks是scriptable的,因此CodeBlocks項目的構(gòu)建能夠集成到你自己的工作過程中。codeblocks.exe/na/nd--no-splash-screen--built<name>.cbp--target=’Release’<filename>指定CodeBlock項目文獻(xiàn)(*.cbp)或解決方案文獻(xiàn)(*.workspace)。--file=<filename>[:line]:使用CodeBlocks打開指定文獻(xiàn)??蛇x的行號批示代碼編輯器跳轉(zhuǎn)到該行。/h,--help:顯示協(xié)助信息。/na,--no-check-associations:不執(zhí)行文獻(xiàn)關(guān)聯(lián)檢查。(windowsonly)/nd,--no-dde:不啟動DDE服務(wù)。(windowsonly)/ni,--no-ipc:不啟動IPC服務(wù)。(LinuxandMaconly)/ns,--no-splash-screen:應(yīng)用程序啟動的時候,不顯示啟動畫面。/d,--debug-log:顯示應(yīng)用程序的調(diào)試日志--prefix=<str>:設(shè)立共享數(shù)據(jù)文獻(xiàn)夾的前綴/p,--personality=<str>,--profile=<str>:設(shè)立要使用的個性化配備。你能夠使用“ask”參數(shù)來列出可選擇的個性化配備。--rebuild:清理并重新編譯工程或解決方案。--build:編譯工程或解決方案。--target=<str>:設(shè)立編譯模式,如:--target=’Release’--no-batch-window-close:編譯完畢的時候,不關(guān)閉日志窗口。--batch-build-notify:編譯完畢的時候顯示提示信息--safe-mode:啟動的時候,全部插件都不可用。><buildlogfile>:重定向原則輸出到日志文獻(xiàn)。這是原則DOS/*nixshell的輸出重定向,并非CodeBlocks內(nèi)置選項。1.13快捷鍵在IDE中使用快捷鍵比使用鼠標(biāo)更為高效。下表給出CodeBolcks默認(rèn)的快捷鍵。(譯者注:筆者將CodeBlocks中的快捷鍵設(shè)立為與VS大致一致,使用CodeBlocks時非常順手。)FunctionShortcutKeyUndolastactionCtrl+ZRedolastactionCtrl+Shift+ZCutselectedtextCtrl+XCopyselectedtextCtrl+CPastetextfromclipboardCtrl+VSelectalltextCtrl+ASwapheader/sourceF11CommenthighlightedcodeCtrl+Shift+CUncommenthighlightedcodeCtrl+Shift+XDuplicatelinecaretisonCtrl+DAuto-complete/AbbreviationsCtrl+Space/Ctrl+JShowcalltipCtrl+Shift+SpaceSwaplinecaretisonwithlineaboveitCtrl+TTogglebookmarkCtrl+BGotopreviousbookmarkAlt+PgUpGotonextbookmarkAlt+PgDownTogglecurrentblockfoldingF12ToggleallfoldsShift+F12CodeBlocks代碼編輯器組件提供的快捷鍵,這些快捷鍵不能重新綁定(rebound)。FunctionShortcutKeyMagnifytextsize.Ctrl+Keypad"+"Reducetextsize.Ctrl+Keypad"-"Restoretextsizetonormal.Ctrl+Keypad"/"Cyclethroughrecentfiles.Ctrl+TabIndentblock.TabDedentblock.Shift+TabDeletetostartofword.Ctrl+BackSpaceDeletetoendofword.Ctrl+DeleteDeletetostartofline.Ctrl+Shift+BackSpaceDeletetoendofline.Ctrl+Shift+DeleteGotostartofdocument.Ctrl+HomeExtendselectiontostartofdocument.Ctrl+Shift+HomeGotostartofdisplayline.Alt+HomeExtendselectiontostartofdisplayline.Alt+Shift+HomeGotoendofdocument.Ctrl+EndExtendselectiontoendofdocument.Ctrl+Shift+EndGotoendofdisplayline.Alt+EndExtendselectiontoendofdisplayline.Alt+Shift+EndExpandorcontractafoldpoint.Ctrl+Keypad"*"Createordeleteabookmark.Ctrl+F2Gotonextbookmark.F2Selecttonextbookmark.Alt+F2Findselection.Ctrl+F3Findselectionbackwards.Ctrl+Shift+F3Scrollup.Ctrl+UpScrolldown.Ctrl+DownLinecut.Ctrl+LLinecopy.Ctrl+Shift+TLinedelete.Ctrl+Shift+LLinetransposewithprevious.Ctrl+TLineduplicate.Ctrl+DFindmatchingpreprocessorconditional,skippingnestedones.Ctrl+KSelecttomatchingpreprocessorconditional.Ctrl+Shift+KFindmatchingpreprocessorconditionalbackwards,skippingnestedones.Ctrl+JSelecttomatchingpreprocessorconditionalbackwards.Ctrl+Shift+JPreviousparagraph.Shiftextendsselection.Ctrl+[Nextparagraph.Shiftextendsselection.Ctrl+]Previousword.Shiftextendsselection.Ctrl+LeftNextword.Shiftextendsselection.Ctrl+RightPreviouswordpart.Shiftextendsselection.Ctrl+/Nextwordpart.Sh
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度智能安防系統(tǒng)設(shè)備維修與升級合同3篇
- 二零二五年度鄉(xiāng)村旅游開發(fā)農(nóng)村房屋買賣合同協(xié)議書2篇
- 2025年度企業(yè)公務(wù)車借用與車輛保險理賠協(xié)議范本3篇
- 二零二五年度農(nóng)機(jī)維修配件進(jìn)出口貿(mào)易合同模板3篇
- 二零二五年度農(nóng)村宅基地房屋買賣及農(nóng)村社會保障體系建設(shè)合同
- 2025年度農(nóng)村農(nóng)業(yè)勞務(wù)用工合同范本(含勞動爭議調(diào)解)
- 二零二五年度新能源實驗室儲能技術(shù)研究合同3篇
- 二零二五年度汽車維修兼職技師雇傭合同3篇
- 2025年度XX能源公司二零二五年度綠色貸款合同3篇
- 2025年度商業(yè)綜合體寫字樓租賃管理服務(wù)協(xié)議3篇
- 2024-2030年中國加速器行業(yè)發(fā)展趨勢及運(yùn)營模式分析報告版
- 護(hù)理查房深靜脈置管
- 計算與人工智能概論知到智慧樹章節(jié)測試課后答案2024年秋湖南大學(xué)
- 2024年度油漆涂料生產(chǎn)線租賃合同3篇
- 2024-2024年上海市高考英語試題及答案
- 慶祝澳門回歸25周年主題班會 課件 (共22張)
- 《藥事管理與法規(guī)》期末考試復(fù)習(xí)題及答案
- 血液病染色體
- 幼兒園膳食管理委員會組織結(jié)構(gòu)概述
- 介入治療的臨床應(yīng)用
- 第四章 牛頓運(yùn)動定律 章末檢測題(基礎(chǔ)卷)(含答案)2024-2025學(xué)年高一上學(xué)期物理人教版(2019)必修第一冊
評論
0/150
提交評論