




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
筆者打算用兩篇日志來完畢對Code::Blocks手冊前二章的編譯,分別是:使用篇、插件篇。本文是第一篇:Code::Blocks使用篇。原手冊第三章簡介Code::Blocks變量、腳本的使用,第四章簡介怎樣從源碼編譯Code::Blocks,這兩章內(nèi)容不是諸多,筆者認(rèn)為對大部分顧客協(xié)助不是不大,暫不打算翻譯。筆者使用的Code::Block版本是nightlybuilds,svn6088(可以在這個(gè)地址下載:,11875.0.html)。使用的編譯器是GCC3.4.5。每個(gè)版本之間的使用也許會(huì)有細(xì)微的差異。Code::Blocks手冊Version1.0感謝CodeBlocks項(xiàng)目組: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項(xiàng)目管理下圖是CodeBlocks運(yùn)行時(shí)的顧客界面:管理(Management):管理窗口包括Project視圖與Symbols視圖。Project視圖顯示目前CodeBlocks打開的所有項(xiàng)目(譯者注:類似與VS處理方案資源管理器);Symbols視圖顯示項(xiàng)目中的標(biāo)識符:類,函數(shù)、變量等信息(譯者注:類似與VS的類視圖)。代碼編輯器:支持代碼折疊,關(guān)鍵字高亮顯示。上圖main.cpp正在被編輯。打開文獻(xiàn)列表:顯示目前在代碼編輯器中打開的所有文獻(xiàn)列表。上圖中打開的文獻(xiàn)列表為:main.cpp,person.cpp,person.hpp代碼段(CodeSnippets):管理常用的代碼段、常用文獻(xiàn)鏈接(linkstofiles)與URL??梢酝ㄟ^菜單View->CodeSnippets來顯示該面板。日志和其他:這個(gè)窗口用于輸出日志信息,顯示查詢成果等等。狀態(tài)欄提供了如下這些信息:編輯器中打開文獻(xiàn)的絕對途徑;文獻(xiàn)的編碼類型;光標(biāo)所在的行與列;目前的鍵盤模式(insert或者overwrite);目前的文獻(xiàn)狀態(tài)。被修改正的(但尚未保留)文獻(xiàn)將被標(biāo)識為“modified”,否則這里為空;文獻(xiàn)操作的權(quán)限。假如文獻(xiàn)是只讀的,這里將會(huì)顯示“Readonly”,在Openfileslist中,該文獻(xiàn)會(huì)使用一種加瑣的圖標(biāo)來顯示;個(gè)性化配置名稱;CodeBlocks提醒了非常靈活和強(qiáng)大的項(xiàng)目管理功能。下文將簡介項(xiàng)目管理的某些常用功能。項(xiàng)目視圖(ProjectView)在CodeBlocks中,Project的源文獻(xiàn)(如C/C++的源文獻(xiàn)及其對應(yīng)的頭文獻(xiàn))和編譯屬性設(shè)置信息都保留在<name>.cbp文獻(xiàn)里??梢酝ㄟ^菜單[File–>Project]啟動(dòng)工程創(chuàng)立向?qū)韯?chuàng)立新的Project,然后通過管理窗口的上下文菜單[Addfiles](譯者注:上下文菜單,指目前窗口中選中目的項(xiàng)目,然后右鍵顯示的菜單)向Project中添加文獻(xiàn)。CodeBlocks會(huì)自動(dòng)根據(jù)文獻(xiàn)的后綴將它們放入不一樣的類別文獻(xiàn)夾中(譯者注:這個(gè)文獻(xiàn)夾是虛擬的,實(shí)際并不存在)。下面是默認(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àng),所有的項(xiàng)目文獻(xiàn)將會(huì)按它們在文獻(xiàn)系統(tǒng)中的位置來顯示。1.2項(xiàng)目備注(NotesforProjects)可以給CodeBlocks項(xiàng)目添加某些備注,用于對項(xiàng)目進(jìn)行概要的描述與闡明,這些信息有助于其他組員迅速的理解項(xiàng)目。備注信息被保留在項(xiàng)目工程文獻(xiàn)里,并可以設(shè)置為伴隨項(xiàng)目的啟動(dòng)而顯示。如圖:1.3項(xiàng)目模板CodeBlocks支持許多不一樣類型的項(xiàng)目模板,它們會(huì)在新建項(xiàng)目的時(shí)候顯示,創(chuàng)立新項(xiàng)目的時(shí)候往往從這些模板中選擇(如上圖:)。顧客可以自定義工程模板。工程模板保留編譯器的類型、編譯選項(xiàng)、資源的配置等有關(guān)信息。項(xiàng)目模板保留在DocumentsandSettingsn\<user>\ApplicationData\codeblocks\UserTemplates目錄中。假如你但愿該工程模板被本機(jī)的所有顧客使用,必須把對應(yīng)的模板文獻(xiàn)拷貝到CodeBlocks的安裝目錄。模板在CodeBlocks重啟之后生效,通過菜單[New->Project->Usertemplates]就可以看到自定義的模板。提醒:顧客可以通過右鍵選中工程向?qū)е械哪0鍖ζ溥M(jìn)行編輯。如下圖:1.4從編譯模式創(chuàng)立項(xiàng)目(CreateProjectsfromBuildTargets)一種項(xiàng)目往往有不一樣的編譯模式,最常見的是Release和Debug。不一樣的編譯模式表達(dá)用于構(gòu)建目前項(xiàng)目所使用的不一樣編譯器選項(xiàng)、調(diào)試信息或者依賴的文獻(xiàn)。每一種編譯模式都可以被保留成獨(dú)立的工程文獻(xiàn)。通過上下文菜單[Project->Properties],在BuildTargets標(biāo)簽中點(diǎn)擊“Createprojectfromtarget”按鈕來生成對應(yīng)編譯模式的工程文獻(xiàn),如圖:1.5編譯模式(VirtualTargets)一種項(xiàng)目可以有多種不一樣的編譯模式,最常用的編譯模式為“Debug”和“Release”。“Debug”模式下會(huì)包括許多Debug信息,而“Release”模式下沒有這些信息。也可以通過上下文菜單[Project->Properties->BuildTargets]添加其他的編譯模式。編譯模式將顯示在工具欄中:1.6預(yù)生成和生成后環(huán)節(jié)(Pre-andPostbuildsetps)Code::blocks容許在項(xiàng)目生成前和生成后執(zhí)行額外的操作,這些操作分別被稱為預(yù)生成(Prebuilt)或生成后(Postbuilt)環(huán)節(jié)。下面是經(jīng)典的生成后環(huán)節(jié):(譯者注:筆者對低層的東西懂得的不多,不是很清晰下面這些環(huán)節(jié)的意思。)CreatinganIntelHexformatfromanishedobjectManipulatingobjectsbyobjcopyGeneratingdumplesbyobjdump1.7為構(gòu)建目的添加腳本(AddingScriptsinBuildTargets)Code::Blocks容許使用腳本來調(diào)用菜單命令,控制項(xiàng)目的生成。提醒:腳本可以被包括到一種構(gòu)建目的(BuildTarget)中。1.8處理方案(Workspace)與項(xiàng)目依賴CodeBlocks可以同步打開多種項(xiàng)目,通過菜單[File->Saveworkspace]把它們集成到一種處理方案中,并生成一種對應(yīng)的處理方案文獻(xiàn)(<name>.workspace)。下次打開解析方案文獻(xiàn)(<name>.workspace)時(shí),這些項(xiàng)目會(huì)被一起加載進(jìn)來。復(fù)雜的軟件系統(tǒng)一般由不一樣的模塊、組件以獨(dú)立的工程項(xiàng)目構(gòu)成,它們之間往往存在依賴關(guān)系。例如:項(xiàng)目A以庫(library)的形式提供某些公用函數(shù)給其他項(xiàng)目調(diào)用,假如項(xiàng)目A中的源代碼被修改,這個(gè)庫就得重新編譯。項(xiàng)目B使用項(xiàng)目A中實(shí)現(xiàn)的函數(shù),那么項(xiàng)目B就依賴項(xiàng)目A。CodeBlocks把這些項(xiàng)目依賴的信息保留到處理方案文獻(xiàn)中,因此處理方案中的工程可以各自獨(dú)立的創(chuàng)立、編譯而不互相影響(譯者注:由處理方案文獻(xiàn)來維護(hù)各項(xiàng)目的依賴關(guān)系)。這些依賴關(guān)系會(huì)決定項(xiàng)目的生成次序。通過菜單[Project->Properties],然后選擇[Project’sdependencies]按鈕來設(shè)置項(xiàng)目之間的依賴關(guān)系。如下圖:1.9包括匯編文獻(xiàn)略。1.10代碼編輯器與工具(EditorandTools)1.10.1默認(rèn)代碼(DefaultCode)企業(yè)的編碼規(guī)范往往規(guī)定源文獻(xiàn)有統(tǒng)一的布局(譯者注:例如源文獻(xiàn)的開始處以統(tǒng)一的格式給出文獻(xiàn)創(chuàng)立的時(shí)間、作者、實(shí)現(xiàn)的功能描述等有關(guān)信息)。CodeBlocks容許預(yù)定義某些內(nèi)容,當(dāng)新建C/C++文獻(xiàn)時(shí)這些內(nèi)容會(huì)自動(dòng)添加到文獻(xiàn)的開始處。這里把預(yù)定義的內(nèi)容稱為defaultcode??梢酝ㄟ^菜單[Settings–>Editor–>DefaultCode]來設(shè)置defaulgcode,通過菜單[File->New->File]創(chuàng)立的代碼文獻(xiàn)將自動(dòng)添加上defaultcode。例如:/**************************************************************************Project:*Function:**************************************************************************$Author:mario$*$Name:$***************************************************************************Copyrightbycompanyname*************************************************************************/1.10.2縮寫(Abbreviation)定義一種常用的代碼片斷[typing],并給它提供一種名字[Abbreviation],在寫程序的時(shí)候,只要給出這個(gè)名字,然后按快捷鍵Ctrl+J,CodeBlocks就會(huì)用預(yù)先定義的代碼片斷來替代該名字。(譯者注:VS中也有類似的功能,在C#程序時(shí),只要寫出關(guān)鍵字for,然后持續(xù)按兩次Tab鍵,編輯器會(huì)自動(dòng)生成for語句的框架,是不是很以便?~_~)。通過菜單[Settings->Editor]來設(shè)置Abbreviation,如下圖:abbreviation也支持參數(shù)變量(Parametrisation)(如:$NOW表達(dá)目前時(shí)間)。如:-->1.10.3個(gè)性化(Personalities)CodeBlocks的配置信息被作為應(yīng)用程序數(shù)據(jù)而保留在codeblocks文獻(xiàn)夾的<user>.conf文獻(xiàn)中。該配置文獻(xiàn)中保留的信息包括:上次打開的項(xiàng)目、代碼編輯器的設(shè)置、符號欄顯示等等。默認(rèn)的個(gè)性化設(shè)置被保留在default.conf文獻(xiàn)中。通過命令行參數(shù)-personality=myuser來調(diào)用CodeBlocks,配置信息將被保留到myuser.conf中。假如該文獻(xiàn)不存在,系統(tǒng)將自動(dòng)創(chuàng)立它。假如以命令行的方式來啟動(dòng)CodeBlocks,并傳遞命令參數(shù)--personality=ask,將會(huì)顯列出目前所有的修改化配置列表,顧客選擇其一啟動(dòng)CodeBlocks。如下圖:1.10.4配置文獻(xiàn)(ConfigurationFiles)CodeBlocks的配置信息保留在codeblocks目錄下的default.conf文獻(xiàn)中。當(dāng)使用個(gè)性化設(shè)置的時(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在第一次啟動(dòng)的時(shí)候,會(huì)將該配置文獻(xiàn)拷貝到目前賬戶的applicationdata目錄下(并作為目前帳戶的配置文獻(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)的修改將不會(huì)被保留。1.10.5導(dǎo)航與搜索(NavigateandSearch)CodeBlocks提供了諸多措施用于文獻(xiàn)和函數(shù)之間導(dǎo)航。書簽就是最常用的一種方式。通過快捷鍵Ctrl+B在源文獻(xiàn)中設(shè)置/刪除一種書簽,通過Alt+PgUp或Alt+PgDn在不一樣的書簽之間跳轉(zhuǎn)。在管理窗口的Project視圖中選中處理方案或項(xiàng)目,右鍵點(diǎn)擊在彈出菜單中選擇[Findfile],輸入你查找的文獻(xiàn)名稱,然后回車,該文獻(xiàn)將被選中(假如文獻(xiàn)存在的話),再按回車,編輯器就會(huì)打開該文獻(xiàn)。如下圖:在CodeBlocks中,你可以很輕易的在頭文獻(xiàn)與源文獻(xiàn)之間導(dǎo)航:1.將光標(biāo)置于頭文獻(xiàn)被包括處(例如:#include“header.hpp”),右鍵選擇性“openincludefile”,編輯器將打開該包括文獻(xiàn)。(譯者注:可以在VS中使用快捷鍵Ctrl+Shift+G實(shí)現(xiàn)同樣的操作。這個(gè)功能非常以便,尤其是要查看源代碼時(shí)。)2.通過右鍵菜單的[Swapheader/source],在頭文獻(xiàn)與源文獻(xiàn)之間切換。3.選中一種定義(如變量名,類型名等等),在右鍵菜單中選擇[Finddeclaration],編輯器就會(huì)打開該定義的申明。(譯者注:可以使用右鍵菜單的[Findimplementation]定位到函數(shù)的實(shí)現(xiàn)處,在VS中使用快捷鍵F12實(shí)現(xiàn)同樣的操作。這也是一種非常以便的功能。)。CodeBlocks提供多種方式用于對單個(gè)文獻(xiàn)或整個(gè)目錄進(jìn)行搜索。通過菜單[Search->Find]或[Search–>FindinFiles]來打開搜索對話框。Alt+G和Ctrl+Alt+G這兩個(gè)快捷鍵用于打開文獻(xiàn)/函數(shù)跳轉(zhuǎn)對話框,只要輸入文獻(xiàn)/函數(shù)的名稱,就可以很以便的跳轉(zhuǎn)到指定文獻(xiàn)或函數(shù)。文獻(xiàn)名/函數(shù)名搜索還支持*和?等能配符。(譯者注:可以使用VisualAssist插件在VS中實(shí)現(xiàn)類似的功能。這兩個(gè)功能真的很以便實(shí)用。)提醒:使用Ctrl+PgUp和Ctrl+PgDn可以在前后函數(shù)之間跳轉(zhuǎn)。在文本編輯器中,使用快捷鍵Ctrl+Tag可以在目前所有打開的文獻(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ù)、變量定義??梢赃x擇符號顯示的區(qū)域是:目前文獻(xiàn)、目前項(xiàng)目、整個(gè)處理方案。(譯者注:與VS的類視圖面板實(shí)現(xiàn)類似的功能。)提醒:在搜索輸入框中輸入符號的名稱,符號瀏覽器將會(huì)過濾不符條件的符號。符號視圖將符號分為如下分類: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)的文檔就會(huì)出現(xiàn)通過快捷鍵F1。…1.10.8集成外部工具通過菜單[Tools->ConfigurationTools–>Add],把外部工具集成到CodeBlocks開發(fā)環(huán)境中。這些外部的工具容許以參數(shù)的形式訪問CodeBlocks的內(nèi)建(Built-in)變量(如目前項(xiàng)目所在的文獻(xiàn)夾${PROJECT_DIR})。運(yùn)用這個(gè)功能,我們給CodeBlocks添加一種菜單項(xiàng):打開目前項(xiàng)目所在的文獻(xiàn)夾。請看圖:(譯者注:這是一種非常實(shí)用的功能。運(yùn)用這個(gè)功能,我在我的CodeBlocks中,添加了三個(gè)我最常用的菜單項(xiàng):使用Notepad++打開目前文獻(xiàn);打開目前項(xiàng)目所在的文獻(xiàn)夾;以Dos窗口打開目前文獻(xiàn)夾。爽歪歪~~)1.11使用CodeBlocks的小提醒(Tips)這節(jié)我們將展示某些CodeBlocks非常有用的提醒。1.11.1修改跟蹤(TrackingofModifications)CodeBlocks通過行號旁邊的小堅(jiān)條顏色來跟蹤源文獻(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)閉,記錄在該文獻(xiàn)上的undo/redo信息和修改標(biāo)識(changebars)將會(huì)清空。假如文獻(xiàn)處理打開狀態(tài),可以通過菜單[Edit->Clearchangeshistory]或者右鍵菜單對應(yīng)選項(xiàng)來顯式地清空這些信息。1.11.2與其他應(yīng)用程序交互CodeBlocks可以在運(yùn)行時(shí)與其他應(yīng)用程序進(jìn)行交互。windows下通過DDE(DynamicDataExchange)實(shí)現(xiàn)這種進(jìn)程間的交互,而在其他操作系統(tǒng)下,基于TCP來實(shí)現(xiàn)交互。如下語法的命令可以發(fā)送給CodeBlocks運(yùn)行實(shí)例:[<command>(“<parameter>”)目前可以使用的命令:Open:命令[Open(“D:\Temp\test.txt”)],在CodeBlocks實(shí)例中(或者啟動(dòng)新的CodeBlocks進(jìn)程,假如需要的話)打開一種文獻(xiàn)。OpenLine:命令[OpenLine(“D:\Temp\test.txt:10”)],在CodeBlocks中打開文獻(xiàn),并定位到指定行數(shù),冒號背面的數(shù)字用于指定行號。(譯者注:不是很明白原文的意思:ThiscommandopensaleatagivenlinenumberinaCodeBlocksinstance.)Raise:讓CodeBlocks實(shí)例獲得焦點(diǎn)。不就給該命令提供參數(shù)。1.11.3配置環(huán)境變量操作系統(tǒng)的配置信息被定義在環(huán)境變量中。例如環(huán)境變量Path包括一種編譯器的安裝目錄途徑,操作系統(tǒng)在運(yùn)行期間都可以隨時(shí)訪問該環(huán)境變量。假如同一編譯器的另一種版本被安裝,就也許會(huì)發(fā)生錯(cuò)誤,如:調(diào)用的編譯器版本不對的。有時(shí)候由于項(xiàng)目的需要,必須在同一機(jī)器上安裝同一編譯器的不一樣版本。為了防止上述錯(cuò)誤的發(fā)生,可以在項(xiàng)目啟動(dòng)之前修改環(huán)境變量。顯然,這個(gè)措施很輕易出錯(cuò),很不靈活?;谶@個(gè)問題,CodeBlocks提供了一種簡樸的處理措施:創(chuàng)立不一樣版本的、只能在CodeBlocks內(nèi)使用的環(huán)境變量,然后根據(jù)項(xiàng)目的需要選擇合適的版本環(huán)境變量。通過菜單[Settings->Environment],在EnvironmentVaribales面板中點(diǎn)擊Create按鈕創(chuàng)立不一樣版本的環(huán)境變量,如下圖:1.11.4切換布局CodeBlocks可以根據(jù)手頭任務(wù)的需要選擇不一樣的配置/視圖,并保留這些配置/視圖。默認(rèn)狀況下這些配置保留在default.conf文獻(xiàn)里。以命令行方式啟動(dòng)Cdoeblocks,并傳遞--personality=ask參數(shù),就可以在列出的個(gè)性化配置列表中選擇一種視圖啟動(dòng)。有時(shí)候,你也許但愿在應(yīng)用程序的使用過程中切換布局,如編碼模式與調(diào)試模式下也許需要不一樣的布局。CodeBlocks提供了一種機(jī)制來實(shí)現(xiàn)這種需求,通過菜單[View->Layouts->Savecurrent],并輸入布局的命名,保留布局。通過[View->Layouts->Layoutname]來切換布局。(譯者注:筆者使用的版本,通過[View->Perspectives]來保留\切換布局,如下圖:)1.11.5項(xiàng)目切換多種項(xiàng)目同步在CodeBlocks中打開時(shí),顧客但愿迅速的在這些項(xiàng)目之間切換。CodeBlocks提供一組快捷鍵來實(shí)現(xiàn):Alt+F5:將視圖中前一種項(xiàng)目設(shè)為激活(Active)項(xiàng)目。(譯者注:類似于VS中將某個(gè)項(xiàng)目設(shè)為啟動(dòng)項(xiàng)目。)Alt+F6:將視圖中后一種項(xiàng)目設(shè)為激活項(xiàng)目。F11:在編輯器中切換源文獻(xiàn)(name.cpp)和頭文獻(xiàn)(name.h)。1.11.6擴(kuò)展編譯器設(shè)置在編譯一種項(xiàng)目的過程中,編譯信息將會(huì)顯示在消息窗口的BuildLog視圖中。假如你想獲取更詳細(xì)的編譯信息,通過菜單[Settings->CompilerandDebugger],在OtherSettings面板中選擇Compilerlogging下拉列表項(xiàng):“Fullcommandline”選項(xiàng)意味著將在BuildLog視圖中顯示所有的編譯信息。可以將這些日志信息保留為HTML文獻(xiàn),通過選中”SavebuildlogtoHTMLfilewhenfinished’。此外,通過選中”Displaybuildprocessbar”,CodeBlocks支持在BuildLog視圖中顯示編譯進(jìn)度。1.11.7編輯器縮放CodeBlocks提供了一種非常高效的編輯器。這個(gè)編輯器容許你縮放打開文本的字體大小。假如你的鼠標(biāo)有滾輪,你只要按住Ctrl鍵,同步滾支鼠標(biāo)滾輪,就可以實(shí)現(xiàn)文本的縮放。提醒:通過菜單[Edit->Specialcommands->Zoom->Reset]來重置縮放。1.11.8自動(dòng)換行模式在CodeBlcoks中打開一種文本文獻(xiàn),使用自動(dòng)換行模式可以將很長的行以多行的形式顯示在一種屏幕內(nèi),有助于編輯。通過菜單[Settings->Editor->OtherOptions],選中Wordwarp來激活自動(dòng)換行模式。…1.11.9塊選文本CodeBlocks支持在代碼編輯器中塊選文本。按住Alt鍵的同步按住鼠標(biāo)左鍵在編輯器選擇一塊區(qū)域。假如你想選擇數(shù)組的幾列進(jìn)行復(fù)制和粘貼,這個(gè)功能是非常有用的(譯者注:VS也提醒類似的功能,快捷鍵也同樣。)。如圖:1.11.10代碼折疊CodeBlocks支持代碼折疊,容許將函數(shù)、類的實(shí)現(xiàn)折疊起來。提醒:通過菜單[Settings->Editor->Folding],可以設(shè)置代碼折疊的樣式和層次限制(depthlimit)。1.11.11自動(dòng)完畢在CodeBlocks中打開一種項(xiàng)目時(shí),編譯器的有關(guān)目錄(include目錄)與項(xiàng)目的源文獻(xiàn)/頭文獻(xiàn)將被解析,提取有關(guān)類型定義、函數(shù)、宏等的信息,CodeBlocks使用這些信息來實(shí)現(xiàn)自動(dòng)完畢功能。通過菜單[Settings->Editors->Codecompletion]啟用該功能,通過快捷鍵Ctrl+Space來顯示提醒信息(譯者注:默認(rèn)的快捷鍵Ctrl+Space不適合中國人的鍵盤習(xí)慣,提議改成其他快捷鍵。)。通過[Settings->Editor->Syntaxhighlighting],你可以添加自定義的關(guān)鍵字。1.11.12查找破損文獻(xiàn)(Findbrokenfiles)假如一種文獻(xiàn)已經(jīng)從磁盤中刪除,但它仍然被包括在項(xiàng)目文獻(xiàn)(project.cbp)中(譯者注:項(xiàng)目的文獻(xiàn)信息保留在*.cbp文獻(xiàn)里。),這個(gè)文獻(xiàn)在項(xiàng)目面板中顯示一種破損符號(如下圖)。應(yīng)當(dāng)通過上下文菜單[Removefilefromproject]將它從項(xiàng)目中移除。一種大的工程也許包括許多子文獻(xiàn)夾,搜索破損文獻(xiàn)會(huì)非?;ㄙM(fèi)時(shí)間。CodeBlocks提供ThreadSearch插件來處理這個(gè)問題。在ThreadSearch中輸入要查找的體現(xiàn)式,并設(shè)置查找的范圍:“Projectfiles”或者“Workspacefiles”,ThreadSearch將會(huì)分析所有包括在項(xiàng)目或者處理方案中的文獻(xiàn)。當(dāng)ThreadSearch找到一種跋損文獻(xiàn)的時(shí)候,會(huì)發(fā)出一種文獻(xiàn)丟失的錯(cuò)誤。1.11.13包括庫在項(xiàng)目的編譯選項(xiàng)中,你可以通過”Add”按鍵添加項(xiàng)目所使用的庫。庫可以以絕對途徑的形式給出,也可以只給出名稱而無需提供lib前綴和文獻(xiàn)擴(kuò)展名。例如:存在這樣的一種庫文獻(xiàn):<path>\libs\lib<name>.a,只要給出<name>,鏈接器就可以找到對應(yīng)的庫文獻(xiàn)。1.11.14對象鏈接次序在編譯過程中,源文獻(xiàn)name.c/cpp將會(huì)被編譯成目的文獻(xiàn)name.o,然后鏈接器把獨(dú)立的目的文獻(xiàn)鏈接成可執(zhí)行文獻(xiàn)name.exe(對于嵌入式系統(tǒng),將鏈接成name.elf)。這種狀況下,也許需要預(yù)先定義對象鏈接的次序。在CodeBlocks中,可以設(shè)置有關(guān)源文獻(xiàn)的優(yōu)先級來實(shí)現(xiàn)。在上下文菜單中選擇[Properties],在Build標(biāo)簽中定義。較低優(yōu)先級使文獻(xiàn)較先鏈接。1.11.15自動(dòng)保留CodeBlcoks容許自動(dòng)保留目前正在編輯的文獻(xiàn)和項(xiàng)目,或者對它們進(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)行。在這種狀況下,需要通過某些選項(xiàng)來控制項(xiàng)目的構(gòu)建過程。由于CodeBlocks是scriptable的,因此CodeBlocks項(xiàng)目的構(gòu)建可以集成到你自己的工作過程中。codeblocks.exe/na/nd--no-splash-screen--built<name>.cbp--target=’Release’<filename>指定CodeBlock項(xiàng)目文獻(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:不啟動(dòng)DDE服務(wù)。(windowsonly)/ni,--no-ipc:不啟動(dòng)IPC服務(wù)。(LinuxandMaconly)/ns,--no-splash-screen:應(yīng)用程序啟動(dòng)的時(shí)候,不顯示啟動(dòng)畫面。/d,--debug-log:顯示應(yīng)用程序的調(diào)試日志--prefix=<str>:設(shè)置共享數(shù)據(jù)文獻(xiàn)夾的前綴/p,--personality=<str>,--profile=<str>:設(shè)置要使用的個(gè)性化配置。你可以使用“ask”參數(shù)來列出可選擇的個(gè)性化配置。--rebuild:清理并重新編譯工程或處理方案。--build:編譯工程或處理方案。--target=<str>:設(shè)置編譯模式,如:--target=’Release’--no-batch-window-close:編譯完畢的時(shí)候,不關(guān)閉日志窗口。--batch-build-notify:編譯完畢的時(shí)候顯示提醒信息--safe-mode:啟動(dòng)的時(shí)候,所有插件都不可用。><buildlogfile>:重定向原則輸出到日志文獻(xiàn)。這是原則DOS/*nixshell的輸出重定向,并非CodeBlocks內(nèi)置選項(xiàng)。1.13快捷鍵在IDE中使用快捷鍵比使用鼠標(biāo)更為高效。下表給出CodeBolcks默認(rèn)的快捷鍵。(譯者注:筆者將CodeBlocks中的快捷鍵設(shè)置為與VS大體一致,使用CodeBlocks時(shí)非常順手。)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.
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年電子脂肪秤項(xiàng)目合作計(jì)劃書
- 氣象預(yù)報(bào)系統(tǒng)歷史數(shù)據(jù)存儲策略
- 教育寓言類故事的解析
- 軟件應(yīng)用教程
- 紅海行動(dòng)寓言故事中的成長啟示
- Isoxepac-Standard-生命科學(xué)試劑-MCE
- 2025年劇裝道具相關(guān)工藝美術(shù)品合作協(xié)議書
- 4-epi-Edoxaban-tosylate-4-epi-DU-176b-生命科學(xué)試劑-MCE
- 金融投資行業(yè)理財(cái)產(chǎn)品投資風(fēng)險(xiǎn)免責(zé)協(xié)議
- 小學(xué)生學(xué)習(xí)方法探討征文
- 人教版八年級數(shù)學(xué)下冊課件【全冊】
- 物聯(lián)網(wǎng)管理平臺的設(shè)計(jì)與實(shí)現(xiàn)
- 1例妊娠糖尿病的個(gè)案護(hù)理
- 《排球正面雙手傳球》課件
- 光伏發(fā)電職業(yè)病危害預(yù)評價(jià)方案方案
- 財(cái)務(wù)報(bào)表涉稅分析
- 五官科眼耳鼻咽喉科醫(yī)療常用器械的認(rèn)識
- 企業(yè)清產(chǎn)核資報(bào)表
- 淺談建筑工程機(jī)電安裝施工技術(shù)運(yùn)用論文
- 2023年新改版教科版四年級下冊科學(xué)練習(xí)題(一課一練+單元+期中+期末)
- 婦產(chǎn)科護(hù)理學(xué)課程標(biāo)準(zhǔn)
評論
0/150
提交評論