第2章VisualC60開發(fā)環(huán)境課件_第1頁
第2章VisualC60開發(fā)環(huán)境課件_第2頁
第2章VisualC60開發(fā)環(huán)境課件_第3頁
第2章VisualC60開發(fā)環(huán)境課件_第4頁
第2章VisualC60開發(fā)環(huán)境課件_第5頁
已閱讀5頁,還剩111頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

2.1開發(fā)環(huán)境概述2.2開發(fā)環(huán)境的菜單功能2.3開發(fā)環(huán)境的工具欄2.4項(xiàng)目和項(xiàng)目工作區(qū)2.5資源2.6一個(gè)控制臺(tái)應(yīng)用程序2.7程序調(diào)試作業(yè)第二章VisualC++6.0開發(fā)環(huán)境

2.1開發(fā)環(huán)境概述第二章VisualC+

界面由標(biāo)題欄、菜單欄、工具欄、項(xiàng)目工作區(qū)窗口、文檔窗口、輸出窗口以及狀態(tài)欄等組成,如圖。

圖2.1VisualC++6.0開發(fā)環(huán)境工具欄菜單欄項(xiàng)目工作區(qū)窗口輸出窗口文檔窗口輸出窗口標(biāo)簽標(biāo)題欄狀態(tài)欄2.1開發(fā)環(huán)境概述 界面由標(biāo)題欄、菜單欄、工具欄、項(xiàng)目工作區(qū)窗口2.2.1File菜單

File菜單中的命令主要用來對(duì)文件和項(xiàng)目進(jìn)行操作。如圖是File菜單中的各條命令,其中各項(xiàng)命令的功能描述如表。

2.2VisualC++6.0的菜單欄2.2.1File菜單2.2Visual2.2VisualC++6.0的菜單欄New選項(xiàng)

選中該選項(xiàng)打開New對(duì)話框,如圖2.3,使用該對(duì)話框可以創(chuàng)建新的文件、項(xiàng)目、工作區(qū)或其他文檔。(1)Files選項(xiàng)卡

通過該選項(xiàng)卡可以創(chuàng)建各種文件。只要選中某種文件類型,再輸入文件名即可。如果要將該文件添加到已有的項(xiàng)目中,只要選中Addtoproject復(fù)選框并選擇項(xiàng)目名即可,見表2-1。2.2VisualC++6.0的菜單欄New2.2VisualC++6.0的菜單欄2.2VisualC++6.0的菜單欄2.2VisualC++6.0的菜單欄(2)Projects

選項(xiàng)卡

通過該選項(xiàng)卡可以創(chuàng)建各種項(xiàng)目文件。輸入項(xiàng)目名稱和存放地址等,見圖2-4。2.2VisualC++6.0的菜單欄(2)P2.2VisualC++6.0的菜單欄2.2VisualC++6.0的菜單欄圖1.4Edit菜單2.2VisualC++6.0的菜單欄2.2.2Edit菜單

Edit菜單中的命令是用來使用戶便捷地編輯文件內(nèi)容,如圖,其中的各項(xiàng)命令的快捷鍵及它們的功能描述如表。圖1.4Edit菜單2.2VisualC++2.2VisualC++6.0的菜單欄Breakpoints選項(xiàng)

選中該選項(xiàng)將出現(xiàn)如圖2-5對(duì)話框。用于設(shè)置、刪除和查看斷點(diǎn),告訴調(diào)試器在何處中斷程序的執(zhí)行,以便檢查程序代碼,變量和寄存器的值。

VC++6.0中,斷點(diǎn)分為位置(Location)、數(shù)據(jù)(Data)和消息(Message)三種斷點(diǎn)。位置斷點(diǎn)通常在源代碼的指定行、函數(shù)的開始、或指定的內(nèi)存地址處設(shè)置。在位置斷點(diǎn)中還可以使用“條件”(Condition)按鈕設(shè)置條件。

數(shù)據(jù)斷點(diǎn)是在某一變量或表達(dá)式上設(shè)置。當(dāng)變量或表達(dá)式的值改變時(shí),數(shù)據(jù)斷點(diǎn)將中斷程序執(zhí)行。。。。2.2VisualC++6.0的菜單欄Brea2.2VisualC++6.0的菜單欄Breakpoints對(duì)話框2.2VisualC++6.0的菜單欄Brea2.2VisualC++6.0的菜單欄2.2.3View菜單

View菜單中的命令用來改變窗口和工具欄的顯示方式,激活調(diào)試時(shí)所用的各個(gè)窗口等。其中的各項(xiàng)命令的功能描述如表。2.2VisualC++6.0的菜單欄VisualC++6.0的菜單欄ClassWizard選項(xiàng)

ClassWizard是一個(gè)用于MFC應(yīng)用程序的專用工具(建立類向?qū)?,包括以下幾個(gè)選項(xiàng)卡.MessageMaps映射消息給與窗口、對(duì)話框、控件、菜單選項(xiàng)和加速鍵有關(guān)的處理函數(shù)。創(chuàng)建或刪除消息處理函數(shù),查看已經(jīng)擁有的消息處理函數(shù)的消息并跳轉(zhuǎn)到相應(yīng)的處理代碼中去,為新的對(duì)象增添管理類等等。2.2VisualC++6.0的菜單欄Clas2.2VisualC++6.0的菜單欄(2)MemberVariables定義成員變量用于自動(dòng)初始化,其中:ControlIDs是映射到成員變量的控件ID值,為一整數(shù)。Type是變量類型,Member是成員變量名。2.2VisualC++6.0的菜單欄(2)2.2VisualC++6.0的菜單欄

資源符號(hào)瀏覽器,從中可以查看和編輯資源符號(hào)。資源符號(hào)字符串用一個(gè)唯一的,有別于其它符號(hào)的整數(shù)值來表示,即代號(hào)與值的關(guān)系。資源的使用便可以通過資源符號(hào)來引用。2.ResourceSymbols選項(xiàng)2.2VisualC++6.0的菜單欄2.2VisualC++6.0的菜單欄

包含資源符號(hào)文件名和預(yù)處理指令。系統(tǒng)默認(rèn)將所有資源符號(hào)保存在文件resource.h中。如果同一文件夾中有多個(gè)資源文件,就必須改變系統(tǒng)默認(rèn)的資源符號(hào)文件名。為此,可以在“符號(hào)標(biāo)題文件”文本框中輸入新的名字來保存資源符號(hào)。通常,只要一個(gè)資源文件保存所有的資源就足夠了?!?.3.ResourceIncludes選項(xiàng)2.2VisualC++6.0的菜單欄2.2VisualC++6.0的菜單欄級(jí)聯(lián)菜單子菜單中的命令只有在調(diào)試狀態(tài)下才可用。4.DebugWindows選項(xiàng)2.2VisualC++6.0的菜單欄2.2VisualC++6.0的菜單欄2.2.4Insert菜單

Insert菜單中的命令主要用于項(xiàng)目及資源的創(chuàng)建和添加,如圖。表列出了Insert菜單的各項(xiàng)命令的快捷鍵及它們的功能。

2.2VisualC++6.0的菜單欄VisualC++6.0的菜單欄

如圖2-8,該對(duì)話框用來創(chuàng)建新類并添加到項(xiàng)目中.1.NewClass選項(xiàng)2.2VisualC++6.0的菜單欄2.2VisualC++6.0的菜單欄該對(duì)話框用來創(chuàng)建新的資源或插入資源文件中.2.Resource選項(xiàng)2.2VisualC++6.0的菜單欄2.2VisualC++6.0的菜單欄2.2.5Project菜單

Project菜單中的命令主要用于項(xiàng)目的一些操作。圖示是Project菜單中的各個(gè)命令。表列出了Project菜單的各項(xiàng)命令的快捷鍵及功能。

2.2VisualC++6.0的菜單欄VisualC++6.0的菜單欄該對(duì)話框可以對(duì)項(xiàng)目進(jìn)行一系列的配置.Settings選項(xiàng)2.2VisualC++6.0的菜單欄2.2VisualC++6.0的菜單欄2.2.6Build菜單

Build菜單中的命令主要用來應(yīng)用程序的編譯、連接、調(diào)試、運(yùn)行,如圖。表列出了Build菜單的各項(xiàng)命令的快捷鍵及它們的功能。

2.2VisualC++6.0的菜單欄VisualC++6.0的菜單欄1.Compile選項(xiàng)

選中該選項(xiàng)讓VC編譯當(dāng)前文件,且只編譯當(dāng)前打開的文件,不調(diào)用鏈接器或任何其他工具.如果當(dāng)前文件是工程文件的資源腳本,將調(diào)用ResourceCompiler.編譯過程如果出現(xiàn)錯(cuò)誤,則將在輸出窗口中顯示錯(cuò)誤信息.為得到錯(cuò)誤代碼的位置,可以在錯(cuò)誤信息處單擊鼠標(biāo)右健,然后在彈出的菜單中選GoToError/Tag選項(xiàng),就能在源代碼窗口中顯示出有錯(cuò)誤的代碼行.2.2VisualC++6.0的菜單欄1.C2.2VisualC++6.0的菜單欄2.Build選項(xiàng)

由于一個(gè)Windows應(yīng)用程序通常是由多個(gè)文件組成,且這些文件可能由不同的程序員設(shè)計(jì)編寫,并且有可能用不同的編譯器編譯過,這就使一個(gè)程序相當(dāng)復(fù)雜.利用Build就可以使編譯、鏈接應(yīng)用程序所花的時(shí)間大大減少。改選項(xiàng)檢查所有的文件,只對(duì)最近修改過的源文件進(jìn)行編譯和鏈接。如果沒有編譯差錯(cuò),將調(diào)用另外的項(xiàng)目文件建立工具來創(chuàng)建最后的項(xiàng)目文件(*.exe文件)。3.RebuildAll選項(xiàng)

允許用戶編譯所有的源文件,而不管何時(shí)被修改過。2.2VisualC++6.0的菜單欄2.2.2VisualC++6.0的菜單欄2.2.7Tools菜單

Tools菜單中的命令主要用于選擇或定制開發(fā)環(huán)境中的一些實(shí)用工具。其中除了VisualC++6.0的組件外,其余的各項(xiàng)命令的快捷鍵及功能描述如表所示。

2.2VisualC++6.0的菜單欄VisualC++6.0的菜單欄1.SourceBrowse選項(xiàng)

默認(rèn)情況下(可以關(guān)閉?。?/p>

,在建立項(xiàng)目時(shí),編譯器會(huì)創(chuàng)建與項(xiàng)目中每一程序文件信息有關(guān)的*.sbr文件。實(shí)用程序bscmake將匯編這些*.sbr文件為單個(gè)瀏覽信息數(shù)據(jù)庫,瀏覽信息數(shù)據(jù)庫的名字由項(xiàng)目基名加擴(kuò)展名.bcs組成(可以在Debug子文件夾中找到?。_x擇改選項(xiàng)將彈出Browse對(duì)話框,從中顯示與程序中所有符號(hào)(類、函數(shù)、數(shù)據(jù)、宏和類型)有關(guān)的信息。通常使用Browse對(duì)話框主要檢查一系列信息,如源文件中所有符號(hào)的信息,引用某符號(hào)的所有源代碼行、基類與成員之間的關(guān)系,派生類與成員之間的關(guān)系,以及調(diào)用的圖形等信息。2.2VisualC++6.0的菜單欄1.2.2VisualC++6.0的菜單欄2.2VisualC++6.0的菜單欄2.2VisualC++6.0的菜單欄2.ErrorLookup選項(xiàng)

可以檢查大多數(shù)Win32API函數(shù)返回的標(biāo)準(zhǔn)錯(cuò)誤代碼。3.Spy++選項(xiàng)

Spy++是Windows可用的最有價(jià)值的工具之一。不僅可以監(jiān)視消息,進(jìn)程,線程和窗口,還能看見這些元素之間的關(guān)系。例如,當(dāng)監(jiān)視一條消息時(shí),可以在窗口中看到這條消息的作用。2.2VisualC++6.0的菜單欄2.2.2VisualC++6.0的菜單欄4.Options選項(xiàng)

對(duì)VC++的環(huán)境設(shè)置(例如調(diào)試器設(shè)置、窗口設(shè)置、目錄設(shè)置、工作區(qū)設(shè)置等)進(jìn)行修改。包含多個(gè)選項(xiàng)卡。(1)編輯器(Editor)選項(xiàng)卡2.2VisualC++6.0的菜單欄4.2.2VisualC++6.0的菜單欄(2)工作區(qū)(Workspace)選項(xiàng)卡可配置工作空間。DockingViews列表框中列出了處于當(dāng)前狀態(tài)的窗口,可以設(shè)置為“打開/關(guān)閉”這些窗口。2.2VisualC++6.0的菜單欄(2)2.2VisualC++6.0的菜單欄(3)格式(Format)選項(xiàng)卡可設(shè)置各窗口字體,大小,顏色等。2.2VisualC++6.0的菜單欄(3)2.3VisualC++6.0的工具欄工具欄是圖形化的操作界面,具有直觀快捷的特點(diǎn).由某些操作按鈕組成,分別對(duì)應(yīng)某些菜單選項(xiàng)或命令的功能.2.3.1工具欄的構(gòu)成

VC++共有十幾種工具欄.默認(rèn)時(shí)只顯示兩個(gè).即:Standard工具欄和BuildMiniBar工具欄,如圖:2.3VisualC++6.0的工具欄工2.3VisualC++6.0的工具欄2.3.2工具欄的定制和修改

可以根據(jù)自己的需要添加新的工具欄,或者對(duì)已有的工具欄進(jìn)行修改.若需要添加工具欄,只需選擇菜單中的“工具(Tools)”->“定制(Customize)”->“工具(Toolbars),然后單擊“新建(New)”按鈕,在彈出的對(duì)話框中輸入定制工具欄的名字,即可出現(xiàn)一個(gè)空欄,再將需要的工具按鈕用鼠標(biāo)一個(gè)一個(gè)拖入空欄即可.2.3VisualC++6.0的工具欄VisualC++6.0的工具欄2.3VisualC++6.0的工具欄2.4項(xiàng)目與項(xiàng)目工作區(qū)VC++6.0以項(xiàng)目工作區(qū)的形式來組織文件、項(xiàng)目和項(xiàng)目配置。每個(gè)項(xiàng)目工作區(qū)由工作目錄中的項(xiàng)目工作區(qū)文件組成。項(xiàng)目工作區(qū)文件(.dsw)含有工作區(qū)的定義和項(xiàng)目中所包含文件的所有信息。2.4.1創(chuàng)建新的項(xiàng)目工作區(qū)

如要?jiǎng)?chuàng)建新的空工作去,按下列步驟:1)選擇File菜單,在選中New選項(xiàng)。2)在對(duì)話框中選擇“工作區(qū)(Workspaces)”選項(xiàng)卡。3)輸入工作區(qū)名字,指定目錄即可。2.4項(xiàng)目與項(xiàng)目工作區(qū)VC++6.0以項(xiàng)目2.4項(xiàng)目與項(xiàng)目工作區(qū)但項(xiàng)目工作區(qū)也可以直接通過菜單的“新建(New)”->“工程(Projects)”選項(xiàng)卡自動(dòng)實(shí)現(xiàn),如圖:自動(dòng)創(chuàng)建2.4項(xiàng)目與項(xiàng)目工作區(qū)但項(xiàng)目工作區(qū)也可以直2.4項(xiàng)目與項(xiàng)目工作區(qū)項(xiàng)目基本概念

在VC中,項(xiàng)目中所有的源文件都是采用文件夾的方式進(jìn)行管理的,它將項(xiàng)目名作為文件夾名,在此文件夾下包含源程序代碼文件(.cpp,.h)、項(xiàng)目文件(.dsp)以及項(xiàng)目工作區(qū)文件(.dsw)等:.opt 關(guān)于開發(fā)環(huán)境的參數(shù)文件,如工具條位置等信息.aps(AppStudioFile)資源輔助文件,二進(jìn)制格式.clw ClassWizard信息文件.dsp(DeveloperStudioProject) 項(xiàng)目文件.plg 編譯信息文件.hpj(HelpProject) 幫助文件項(xiàng)目.mdp(MicrosoftDevStudioProject) 舊版本的項(xiàng)目文件.bsc 用于瀏覽項(xiàng)目信息.map 執(zhí)行文件的映像信息紀(jì)錄文件.pch(Pre-CompiledFile)預(yù)編譯文件,可以加快編譯速度,但是文件非常大.pdb(ProgramDatabase)記錄程序有關(guān)的一些數(shù)據(jù)和調(diào)試信息.exp 記錄DLL文件中的一些信息,只有在編譯DLL才會(huì)生成.ncb 無編譯瀏覽文件(nocompilebrowser)2.4項(xiàng)目與項(xiàng)目工作區(qū)項(xiàng)目基本概念2.4項(xiàng)目與項(xiàng)目工作區(qū)2.4.2項(xiàng)目工作區(qū)窗口VC++6.0項(xiàng)目工作區(qū)由ClassView(類顯示)面板、ResourceView(資源顯示)面板和FileView(文件顯示)面板組成。ClassView面板

該面板列出了當(dāng)前項(xiàng)目中的類。通過該面板可以瀏覽類的成員,包括成員函數(shù)和成員變量。如果成員是保護(hù)或私有類型,則它的左邊有一個(gè)鑰匙圖標(biāo)。雙擊成員,可以在源代碼窗口查看其源,雙擊類名,則打開聲明該類的頭文件…2.4項(xiàng)目與項(xiàng)目工作區(qū)2.4.2項(xiàng)目工作區(qū)窗2.4項(xiàng)目與項(xiàng)目工作區(qū)2.ResourceView面板

該面板擁有當(dāng)前項(xiàng)目中包含的所有資源。擴(kuò)展頂層文件夾(樹型)可以顯示資源類型。2.4項(xiàng)目與項(xiàng)目工作區(qū)2.ResourceVie2.4項(xiàng)目與項(xiàng)目工作區(qū)3.FileView面板

該面板用于顯示當(dāng)前項(xiàng)目中的各項(xiàng)目之間的包含關(guān)系和項(xiàng)目中包含的所有文件。擴(kuò)展頂層文件夾可以顯示所有文件。雙擊某個(gè)文件名或圖標(biāo)可以打開相應(yīng)的源程序編輯窗口。2.4項(xiàng)目與項(xiàng)目工作區(qū)3.FileView面板2.5資源及資源編輯器2.5.1資源與資源標(biāo)識(shí)

資源的分類 (1)快捷鍵列表 (2)工具欄按鈕 (3)鼠標(biāo)指針 (4)對(duì)話框 (5)HTML (6)圖標(biāo) (7)菜單 (8)字符串列表 (9)版本信息標(biāo)識(shí)符標(biāo)識(shí)符的命名規(guī)則: (1)

在標(biāo)識(shí)符名稱中允許使用字母a~z、A~Z、0~9以及下劃線。 (2)標(biāo)識(shí)符名稱不區(qū)分大小寫字母。 (3)

不能以數(shù)字開頭,如8BIT是不合法的標(biāo)識(shí)符名。 (4)

字符個(gè)數(shù)不得超過247個(gè)。

VC++包含各種資源,構(gòu)成界面成分,用戶可以通過它執(zhí)行某個(gè)操作或獲得信息.但資源只提供一個(gè)顯示信息或操作提示的一個(gè)窗口,如果應(yīng)用程序需要顯示信息或執(zhí)行某一操作,必須編寫相應(yīng)的程序代碼完成.資源的描述文件為“.rc”.VC++6.0提供資源編輯器來完成資源的創(chuàng)建和修改,編譯時(shí)可自動(dòng)將資源編譯鏈接到應(yīng)用程序中去.2.5資源及資源編輯器2.5.1資源與資源標(biāo)2.5資源及資源編輯器2.5.2資源基本操作

創(chuàng)建資源從“Insert”菜單選取“Resource”,如圖。[New]用來創(chuàng)建一個(gè)由ResourceType列表中指定類型的新資源,[Import]按鈕用于將外部已有的資源添加到當(dāng)前應(yīng)用程序中。(2)

從ResourceType列表中選擇一種資源類型,而后按[New]按鈕。(3)在項(xiàng)目工作區(qū)窗口的ResourceView頁面中,看到了剛才選中的資源的缺省標(biāo)識(shí)符,而且相應(yīng)的資源編輯器自動(dòng)打開。2.5資源及資源編輯器2.5.2資源基本操作2.5資源及資源編輯器2.5.3資源文件的管理

資源文件一經(jīng)創(chuàng)建,與資源相對(duì)應(yīng)的標(biāo)識(shí)符也被保存在Resource.h頭文件中。一般,在一個(gè)資源文件.rc中所保存的所有資源已經(jīng)滿足需要了,盡管如此,VC仍然允許用多個(gè)文件來存放資源。用View菜單中的“ResourceIncludes”菜單命令打開對(duì)話框(如圖)時(shí),可以看到Compile-timedirectives編輯框中已經(jīng)含有#include"res\sipp.rc2"。

2.5資源及資源編輯器2.5.3資源文件的管2.5資源及資源編輯器2.5.4資源標(biāo)識(shí)符

VC++中,源代碼或資源編輯器為了引用或識(shí)別資源,給每一資源(包括其中的項(xiàng))賦予一一對(duì)應(yīng)的標(biāo)識(shí)符,每當(dāng)資源被創(chuàng)建時(shí),系統(tǒng)能自動(dòng)給每一資源賦給一個(gè)默認(rèn)的符號(hào)名稱(標(biāo)識(shí)符,即ID),并賦予一個(gè)整數(shù)值與之對(duì)應(yīng),改定義保存在“Resource.h”文件中,可以通過菜單“View”->“ResourceSystems”打開查看。也可查看只讀(尚未被使用)的資源符號(hào),如圖:

2.5資源及資源編輯器2.5.4資源標(biāo)識(shí)符2.6一個(gè)控制臺(tái)應(yīng)用程序2.6.1用AppWizard創(chuàng)建用AppWizard創(chuàng)建一個(gè)控制臺(tái)應(yīng)用程序可按下列步驟進(jìn)行:(1)

選擇“File”“New”菜單命令,顯示出“New”對(duì)話框。(2)

選擇Projects標(biāo)簽,選中Win32ConsoleApplication項(xiàng)。(3)在ProjectName框中鍵入控制臺(tái)應(yīng)用程序項(xiàng)目名稱。第一次使用時(shí)最好確定該項(xiàng)目所在的文件夾以便于源文件的管理,既可在Location下的編輯框中直接鍵入文件夾名稱,也可單擊Browse按鈕擇一個(gè)已有的文件夾,如圖。

2.6一個(gè)控制臺(tái)應(yīng)用程序2.6.1用AppWiz2.6一個(gè)控制臺(tái)應(yīng)用程序(4)單擊[OK]。如圖。選中Asimpleapplication項(xiàng)。(5)單擊[Finish],如圖,單擊[OK]系統(tǒng)將自動(dòng)創(chuàng)建此應(yīng)用程序。2.6一個(gè)控制臺(tái)應(yīng)用程序(4)單擊[OK]。如圖。2.6一個(gè)控制臺(tái)應(yīng)用程序2.6.2理解程序框架

在項(xiàng)目工作區(qū)窗口中只能看到ClassView和FileView標(biāo)簽,如圖。切換到FileView頁面,可以看到AppWizard為生成了test.cpp、Stdafx.cpp、Stdafx.h以及ReadMe.txt四個(gè)文件。Stdafx.cpp是一個(gè)只有一條語句的空文件,Stdafx.h是VC為每個(gè)項(xiàng)目配置的用來預(yù)編譯的文件,ReadMe.txt是VC為每個(gè)項(xiàng)目配置的說明文件,包括對(duì)AppWizard產(chǎn)生文件類型的說明以及操作的一些技巧.test.cpp是AppWizard產(chǎn)生的“真正”具有實(shí)際意義的程序源代碼文件,幾乎所有的代碼都是添加在這個(gè)文件中的。2.6一個(gè)控制臺(tái)應(yīng)用程序2.6.2理解程序框架作業(yè)作業(yè)2.7程序調(diào)試2.7.1修正語法錯(cuò)誤

調(diào)試最初的任務(wù)主要是修正一些語法錯(cuò)誤,這些錯(cuò)誤包括: (1)

未定義或不合法的標(biāo)識(shí)符,如函數(shù)名、變量名和類名等。 (2)

數(shù)據(jù)類型或參數(shù)類型及個(gè)數(shù)不匹配。 上述錯(cuò)誤在編譯后,會(huì)在Output窗口中列出所有錯(cuò)誤項(xiàng)。若將光標(biāo)移到Output窗口中的錯(cuò)誤編號(hào)上,按F1鍵可啟動(dòng)MSDN并顯示出錯(cuò)誤的內(nèi)容,從而幫助用戶理解錯(cuò)誤產(chǎn)生的原因。 為了能使快速定位到錯(cuò)誤產(chǎn)生的源代碼位置,提供下列一些方法: (1)在Output窗口中雙擊某個(gè)錯(cuò)誤,或?qū)⒐鈽?biāo)移到該錯(cuò)誤處按Enter鍵,則該錯(cuò)誤被亮顯,狀態(tài)欄上顯示出錯(cuò)誤內(nèi)容,并定位到相應(yīng)的代碼行中,且該代碼行最前面有個(gè)藍(lán)色箭頭標(biāo)志。 (2)

按F4鍵可顯示下一錯(cuò)誤,并定位到相應(yīng)的源代碼行。 (3)

在Output窗口中的某個(gè)錯(cuò)誤項(xiàng)上,右擊鼠標(biāo),在彈出的快捷菜單中選擇“GoToError/Tag”命令。 語法錯(cuò)誤被修正后,編譯時(shí)會(huì)出現(xiàn)類似“test.exe-0error(s),0warning(s)”的字樣。并不是說,此項(xiàng)目完全沒有錯(cuò)誤,可能還有“異?!?、“斷言”等其他錯(cuò)誤,而這些錯(cuò)誤在編譯時(shí)是不會(huì)顯示出來的,只有當(dāng)程序運(yùn)行后才會(huì)出現(xiàn)。

2.7程序調(diào)試2.7.1修正語法錯(cuò)誤2.7.2設(shè)置斷點(diǎn)

調(diào)試的斷點(diǎn)可以有下列類型:(1)

位置斷點(diǎn)、(2)

數(shù)據(jù)斷點(diǎn)、(3)條件斷點(diǎn)??旖莘绞?三種快捷方式可以設(shè)置位置斷點(diǎn):(1)

按快捷鍵F9。(2)

在Build工具欄上單擊按鈕。(3)在需要設(shè)置斷點(diǎn)的位置右擊,選擇“Insert/RemoveBreakpoint”命令。斷點(diǎn)標(biāo)志斷點(diǎn)標(biāo)志程序中斷的位置2.7程序調(diào)試2.7.2設(shè)置斷點(diǎn)斷點(diǎn)標(biāo)志斷點(diǎn)標(biāo)志程序中斷的位置2.72.7程序調(diào)試使用斷點(diǎn)(Breakpoints)對(duì)話框(1)凡是可以使用的斷點(diǎn)前均有選中標(biāo)記(√)。若單擊前面的復(fù)選框,則該斷點(diǎn)被禁止。按鈕[Remove]和[RemoveAll]清除當(dāng)前選中的斷點(diǎn)或全部斷點(diǎn)。(2)在Location頁面中,“BreakAt”文本框中可以輸入斷點(diǎn)的名稱。單擊[EditCode]可以查看斷點(diǎn)位置處的源代碼或目標(biāo)代碼。單擊[Condition],可以輸入程序運(yùn)行中斷所需要的表達(dá)式條件,從而設(shè)置一個(gè)條件斷點(diǎn)。(3)在Data頁面中,提供了一種設(shè)置數(shù)據(jù)斷點(diǎn)的方法,如圖。在Data頁面的最上面編譯框中,可以鍵入任何有效的C/C++表達(dá)式,它可以是賦值語句,可以是條件語句,可以是單獨(dú)的一個(gè)變量名。在程序運(yùn)行過程中,若變量的值有所改變,或者條件表達(dá)式變成真時(shí),則程序在該斷點(diǎn)處中斷。2.7程序調(diào)試使用斷點(diǎn)(Breakpoints)對(duì)話2.7程序調(diào)試2.7.3啟用調(diào)試器

選擇“Project”菜單“Settings”命令,如圖。在調(diào)試程序時(shí)必須使用Debug版本。通過選擇“Debuginfo”組合框來設(shè)置調(diào)試選項(xiàng)。含義如表。還可以在“ProjectSettings”對(duì)話框中的“Link”頁面中,選中“Generatemapfile”項(xiàng),使其在編連時(shí)產(chǎn)生相應(yīng)的映射文件。選擇“Build”菜單“StartDebug”子菜單的“Go”、“StepInto”或“RunToCursor”命令,就可以啟動(dòng)調(diào)試器了。2.7程序調(diào)試2.7.3啟用調(diào)試器2.7程序調(diào)試2.7.4控制程序運(yùn)行

當(dāng)程序開始運(yùn)行在Debug狀態(tài)下時(shí),程序會(huì)由于斷點(diǎn)而停頓下來。這時(shí)可以看到有一個(gè)小箭頭,它指向即將執(zhí)行的代碼。而且,原來的“Build”菜單就會(huì)變成“Debug”菜單,如圖1.34所示。其中有四條命令StepInto、StepOver、StepOut和RuntoCursor是用來控制程序運(yùn)行的,其含義是:1.

StepOver的功能是運(yùn)行當(dāng)前箭頭指向的代碼(只運(yùn)行一條代碼)。2.

StepInto的功能是如果當(dāng)前箭頭所指的代碼是一個(gè)函數(shù)的調(diào)用,則用StepInto進(jìn)入該函數(shù)進(jìn)行單步執(zhí)行。3.StepOut的功能是如果當(dāng)前箭頭所指向的代碼是在某一函數(shù)內(nèi),用它使程序運(yùn)行至函數(shù)返回處。4.RuntoCursor的功能是使程序運(yùn)行至光標(biāo)所指的代碼處。2.7程序調(diào)試2.7.4控制程序運(yùn)行Watch窗口Output窗口Variables窗口2.7程序調(diào)試2.7.5查看和修改變量的值

調(diào)試器還提供一系列的窗口,用來顯示各種不同的調(diào)試信息??山柚癡iew”菜單下的“DebugWindows”子菜單可以訪問它們。當(dāng)啟動(dòng)調(diào)試器后,VC的開發(fā)環(huán)境會(huì)自動(dòng)顯示出Watch和Variables兩個(gè)調(diào)試窗口,且Output窗口自動(dòng)切換到Debug頁面,如圖。Watch窗口Output窗口Variables窗口2.72.7程序調(diào)試QuickWatch窗口的使用

用來幫助用戶快速查看或修改某個(gè)變量或表達(dá)式的值。若僅需要快速查看變量或表達(dá)式的值,則只需要將鼠標(biāo)指針直接放在該變量或表達(dá)式上,片刻后,系統(tǒng)會(huì)自動(dòng)彈出一個(gè)小窗口顯示出該變量或表達(dá)式的值。啟動(dòng)調(diào)試器后,選擇“Debug”“QuickWatch”或按快捷鍵Shift+F9,如圖。Expression框可以讓用戶鍵入變量名或表達(dá)式,而后按Enter鍵或單擊[Recalculate],就可以在Currentvalue列表中顯示出相應(yīng)的值。若想要修改其值的大小,則可按Tab鍵或在列表項(xiàng)的“Value”域中雙擊該值,再輸入新值按Enter鍵就可以了。單擊[AddWatch]按鈕可將剛才輸入的變量名或表達(dá)式及其值顯示在“Watch”窗口中。2.7程序調(diào)試QuickWatch窗口的使用空框2.7程序調(diào)試Watch窗口的使用

選擇“View”“DebugWindows”“Watch”,四個(gè)頁面:Watch1、Watch2、Watch3和Watch4,在每一個(gè)頁面中有要查看的變量或表達(dá)式,可以將一組變量或表達(dá)式的值顯示在同一個(gè)頁面中。使用Watch窗口進(jìn)行操作時(shí),要注意到下面一些技巧: (1)

添加新的變量或表達(dá)式 選定窗口中某個(gè)頁面,在末尾的空框處,單擊左邊的“Name”域,輸入變量或表達(dá)式,按Enter鍵。同時(shí),又在末尾處出現(xiàn)新的空框,如圖。 在變量或表達(dá)式中右擊,選擇“Properties”查看其類型。 (2)

修改變量或表達(dá)式的值 選中相應(yīng)的變量或表達(dá)式,按Tab鍵或在列表項(xiàng)的“Value”域中雙擊該值,再輸入新值按Enter鍵就可以了。 (3)

刪除變量或表達(dá)式 單擊Del鍵可將當(dāng)前選定的變量或表達(dá)式刪除??湛?.7程序調(diào)試Watch窗口的使用2.7程序調(diào)試Variables窗口的使用

Variables窗口能快速訪問程序當(dāng)前的環(huán)境中所使用的重要變量。選擇“View”“DebugWindows”“Variables”,其中有三個(gè)頁面:Auto頁面 顯示出當(dāng)前語句和上一條語句使用的變量,還顯示使用StepOver或StepOut命令后函數(shù)的返回值。Locals頁面 顯示出當(dāng)前函數(shù)使用的局部變量。This頁面顯示出由This所指向的對(duì)象。 Variables窗口還有一個(gè)“Context”框,從下拉列表中可以選定當(dāng)前CallStack的指令,以確定在頁面中顯示變量的范圍,如圖。2.7程序調(diào)試Variables窗口的使用演講完畢,謝謝觀看!演講完畢,謝謝觀看!2.1開發(fā)環(huán)境概述2.2開發(fā)環(huán)境的菜單功能2.3開發(fā)環(huán)境的工具欄2.4項(xiàng)目和項(xiàng)目工作區(qū)2.5資源2.6一個(gè)控制臺(tái)應(yīng)用程序2.7程序調(diào)試作業(yè)第二章VisualC++6.0開發(fā)環(huán)境

2.1開發(fā)環(huán)境概述第二章VisualC+

界面由標(biāo)題欄、菜單欄、工具欄、項(xiàng)目工作區(qū)窗口、文檔窗口、輸出窗口以及狀態(tài)欄等組成,如圖。

圖2.1VisualC++6.0開發(fā)環(huán)境工具欄菜單欄項(xiàng)目工作區(qū)窗口輸出窗口文檔窗口輸出窗口標(biāo)簽標(biāo)題欄狀態(tài)欄2.1開發(fā)環(huán)境概述 界面由標(biāo)題欄、菜單欄、工具欄、項(xiàng)目工作區(qū)窗口2.2.1File菜單

File菜單中的命令主要用來對(duì)文件和項(xiàng)目進(jìn)行操作。如圖是File菜單中的各條命令,其中各項(xiàng)命令的功能描述如表。

2.2VisualC++6.0的菜單欄2.2.1File菜單2.2Visual2.2VisualC++6.0的菜單欄New選項(xiàng)

選中該選項(xiàng)打開New對(duì)話框,如圖2.3,使用該對(duì)話框可以創(chuàng)建新的文件、項(xiàng)目、工作區(qū)或其他文檔。(1)Files選項(xiàng)卡

通過該選項(xiàng)卡可以創(chuàng)建各種文件。只要選中某種文件類型,再輸入文件名即可。如果要將該文件添加到已有的項(xiàng)目中,只要選中Addtoproject復(fù)選框并選擇項(xiàng)目名即可,見表2-1。2.2VisualC++6.0的菜單欄New2.2VisualC++6.0的菜單欄2.2VisualC++6.0的菜單欄2.2VisualC++6.0的菜單欄(2)Projects

選項(xiàng)卡

通過該選項(xiàng)卡可以創(chuàng)建各種項(xiàng)目文件。輸入項(xiàng)目名稱和存放地址等,見圖2-4。2.2VisualC++6.0的菜單欄(2)P2.2VisualC++6.0的菜單欄2.2VisualC++6.0的菜單欄圖1.4Edit菜單2.2VisualC++6.0的菜單欄2.2.2Edit菜單

Edit菜單中的命令是用來使用戶便捷地編輯文件內(nèi)容,如圖,其中的各項(xiàng)命令的快捷鍵及它們的功能描述如表。圖1.4Edit菜單2.2VisualC++2.2VisualC++6.0的菜單欄Breakpoints選項(xiàng)

選中該選項(xiàng)將出現(xiàn)如圖2-5對(duì)話框。用于設(shè)置、刪除和查看斷點(diǎn),告訴調(diào)試器在何處中斷程序的執(zhí)行,以便檢查程序代碼,變量和寄存器的值。

VC++6.0中,斷點(diǎn)分為位置(Location)、數(shù)據(jù)(Data)和消息(Message)三種斷點(diǎn)。位置斷點(diǎn)通常在源代碼的指定行、函數(shù)的開始、或指定的內(nèi)存地址處設(shè)置。在位置斷點(diǎn)中還可以使用“條件”(Condition)按鈕設(shè)置條件。

數(shù)據(jù)斷點(diǎn)是在某一變量或表達(dá)式上設(shè)置。當(dāng)變量或表達(dá)式的值改變時(shí),數(shù)據(jù)斷點(diǎn)將中斷程序執(zhí)行。。。。2.2VisualC++6.0的菜單欄Brea2.2VisualC++6.0的菜單欄Breakpoints對(duì)話框2.2VisualC++6.0的菜單欄Brea2.2VisualC++6.0的菜單欄2.2.3View菜單

View菜單中的命令用來改變窗口和工具欄的顯示方式,激活調(diào)試時(shí)所用的各個(gè)窗口等。其中的各項(xiàng)命令的功能描述如表。2.2VisualC++6.0的菜單欄VisualC++6.0的菜單欄ClassWizard選項(xiàng)

ClassWizard是一個(gè)用于MFC應(yīng)用程序的專用工具(建立類向?qū)?,包括以下幾個(gè)選項(xiàng)卡.MessageMaps映射消息給與窗口、對(duì)話框、控件、菜單選項(xiàng)和加速鍵有關(guān)的處理函數(shù)。創(chuàng)建或刪除消息處理函數(shù),查看已經(jīng)擁有的消息處理函數(shù)的消息并跳轉(zhuǎn)到相應(yīng)的處理代碼中去,為新的對(duì)象增添管理類等等。2.2VisualC++6.0的菜單欄Clas2.2VisualC++6.0的菜單欄(2)MemberVariables定義成員變量用于自動(dòng)初始化,其中:ControlIDs是映射到成員變量的控件ID值,為一整數(shù)。Type是變量類型,Member是成員變量名。2.2VisualC++6.0的菜單欄(2)2.2VisualC++6.0的菜單欄

資源符號(hào)瀏覽器,從中可以查看和編輯資源符號(hào)。資源符號(hào)字符串用一個(gè)唯一的,有別于其它符號(hào)的整數(shù)值來表示,即代號(hào)與值的關(guān)系。資源的使用便可以通過資源符號(hào)來引用。2.ResourceSymbols選項(xiàng)2.2VisualC++6.0的菜單欄2.2VisualC++6.0的菜單欄

包含資源符號(hào)文件名和預(yù)處理指令。系統(tǒng)默認(rèn)將所有資源符號(hào)保存在文件resource.h中。如果同一文件夾中有多個(gè)資源文件,就必須改變系統(tǒng)默認(rèn)的資源符號(hào)文件名。為此,可以在“符號(hào)標(biāo)題文件”文本框中輸入新的名字來保存資源符號(hào)。通常,只要一個(gè)資源文件保存所有的資源就足夠了?!?.3.ResourceIncludes選項(xiàng)2.2VisualC++6.0的菜單欄2.2VisualC++6.0的菜單欄級(jí)聯(lián)菜單子菜單中的命令只有在調(diào)試狀態(tài)下才可用。4.DebugWindows選項(xiàng)2.2VisualC++6.0的菜單欄2.2VisualC++6.0的菜單欄2.2.4Insert菜單

Insert菜單中的命令主要用于項(xiàng)目及資源的創(chuàng)建和添加,如圖。表列出了Insert菜單的各項(xiàng)命令的快捷鍵及它們的功能。

2.2VisualC++6.0的菜單欄VisualC++6.0的菜單欄

如圖2-8,該對(duì)話框用來創(chuàng)建新類并添加到項(xiàng)目中.1.NewClass選項(xiàng)2.2VisualC++6.0的菜單欄2.2VisualC++6.0的菜單欄該對(duì)話框用來創(chuàng)建新的資源或插入資源文件中.2.Resource選項(xiàng)2.2VisualC++6.0的菜單欄2.2VisualC++6.0的菜單欄2.2.5Project菜單

Project菜單中的命令主要用于項(xiàng)目的一些操作。圖示是Project菜單中的各個(gè)命令。表列出了Project菜單的各項(xiàng)命令的快捷鍵及功能。

2.2VisualC++6.0的菜單欄VisualC++6.0的菜單欄該對(duì)話框可以對(duì)項(xiàng)目進(jìn)行一系列的配置.Settings選項(xiàng)2.2VisualC++6.0的菜單欄2.2VisualC++6.0的菜單欄2.2.6Build菜單

Build菜單中的命令主要用來應(yīng)用程序的編譯、連接、調(diào)試、運(yùn)行,如圖。表列出了Build菜單的各項(xiàng)命令的快捷鍵及它們的功能。

2.2VisualC++6.0的菜單欄VisualC++6.0的菜單欄1.Compile選項(xiàng)

選中該選項(xiàng)讓VC編譯當(dāng)前文件,且只編譯當(dāng)前打開的文件,不調(diào)用鏈接器或任何其他工具.如果當(dāng)前文件是工程文件的資源腳本,將調(diào)用ResourceCompiler.編譯過程如果出現(xiàn)錯(cuò)誤,則將在輸出窗口中顯示錯(cuò)誤信息.為得到錯(cuò)誤代碼的位置,可以在錯(cuò)誤信息處單擊鼠標(biāo)右健,然后在彈出的菜單中選GoToError/Tag選項(xiàng),就能在源代碼窗口中顯示出有錯(cuò)誤的代碼行.2.2VisualC++6.0的菜單欄1.C2.2VisualC++6.0的菜單欄2.Build選項(xiàng)

由于一個(gè)Windows應(yīng)用程序通常是由多個(gè)文件組成,且這些文件可能由不同的程序員設(shè)計(jì)編寫,并且有可能用不同的編譯器編譯過,這就使一個(gè)程序相當(dāng)復(fù)雜.利用Build就可以使編譯、鏈接應(yīng)用程序所花的時(shí)間大大減少。改選項(xiàng)檢查所有的文件,只對(duì)最近修改過的源文件進(jìn)行編譯和鏈接。如果沒有編譯差錯(cuò),將調(diào)用另外的項(xiàng)目文件建立工具來創(chuàng)建最后的項(xiàng)目文件(*.exe文件)。3.RebuildAll選項(xiàng)

允許用戶編譯所有的源文件,而不管何時(shí)被修改過。2.2VisualC++6.0的菜單欄2.2.2VisualC++6.0的菜單欄2.2.7Tools菜單

Tools菜單中的命令主要用于選擇或定制開發(fā)環(huán)境中的一些實(shí)用工具。其中除了VisualC++6.0的組件外,其余的各項(xiàng)命令的快捷鍵及功能描述如表所示。

2.2VisualC++6.0的菜單欄VisualC++6.0的菜單欄1.SourceBrowse選項(xiàng)

默認(rèn)情況下(可以關(guān)閉?。?/p>

,在建立項(xiàng)目時(shí),編譯器會(huì)創(chuàng)建與項(xiàng)目中每一程序文件信息有關(guān)的*.sbr文件。實(shí)用程序bscmake將匯編這些*.sbr文件為單個(gè)瀏覽信息數(shù)據(jù)庫,瀏覽信息數(shù)據(jù)庫的名字由項(xiàng)目基名加擴(kuò)展名.bcs組成(可以在Debug子文件夾中找到?。?。選擇改選項(xiàng)將彈出Browse對(duì)話框,從中顯示與程序中所有符號(hào)(類、函數(shù)、數(shù)據(jù)、宏和類型)有關(guān)的信息。通常使用Browse對(duì)話框主要檢查一系列信息,如源文件中所有符號(hào)的信息,引用某符號(hào)的所有源代碼行、基類與成員之間的關(guān)系,派生類與成員之間的關(guān)系,以及調(diào)用的圖形等信息。2.2VisualC++6.0的菜單欄1.2.2VisualC++6.0的菜單欄2.2VisualC++6.0的菜單欄2.2VisualC++6.0的菜單欄2.ErrorLookup選項(xiàng)

可以檢查大多數(shù)Win32API函數(shù)返回的標(biāo)準(zhǔn)錯(cuò)誤代碼。3.Spy++選項(xiàng)

Spy++是Windows可用的最有價(jià)值的工具之一。不僅可以監(jiān)視消息,進(jìn)程,線程和窗口,還能看見這些元素之間的關(guān)系。例如,當(dāng)監(jiān)視一條消息時(shí),可以在窗口中看到這條消息的作用。2.2VisualC++6.0的菜單欄2.2.2VisualC++6.0的菜單欄4.Options選項(xiàng)

對(duì)VC++的環(huán)境設(shè)置(例如調(diào)試器設(shè)置、窗口設(shè)置、目錄設(shè)置、工作區(qū)設(shè)置等)進(jìn)行修改。包含多個(gè)選項(xiàng)卡。(1)編輯器(Editor)選項(xiàng)卡2.2VisualC++6.0的菜單欄4.2.2VisualC++6.0的菜單欄(2)工作區(qū)(Workspace)選項(xiàng)卡可配置工作空間。DockingViews列表框中列出了處于當(dāng)前狀態(tài)的窗口,可以設(shè)置為“打開/關(guān)閉”這些窗口。2.2VisualC++6.0的菜單欄(2)2.2VisualC++6.0的菜單欄(3)格式(Format)選項(xiàng)卡可設(shè)置各窗口字體,大小,顏色等。2.2VisualC++6.0的菜單欄(3)2.3VisualC++6.0的工具欄工具欄是圖形化的操作界面,具有直觀快捷的特點(diǎn).由某些操作按鈕組成,分別對(duì)應(yīng)某些菜單選項(xiàng)或命令的功能.2.3.1工具欄的構(gòu)成

VC++共有十幾種工具欄.默認(rèn)時(shí)只顯示兩個(gè).即:Standard工具欄和BuildMiniBar工具欄,如圖:2.3VisualC++6.0的工具欄工2.3VisualC++6.0的工具欄2.3.2工具欄的定制和修改

可以根據(jù)自己的需要添加新的工具欄,或者對(duì)已有的工具欄進(jìn)行修改.若需要添加工具欄,只需選擇菜單中的“工具(Tools)”->“定制(Customize)”->“工具(Toolbars),然后單擊“新建(New)”按鈕,在彈出的對(duì)話框中輸入定制工具欄的名字,即可出現(xiàn)一個(gè)空欄,再將需要的工具按鈕用鼠標(biāo)一個(gè)一個(gè)拖入空欄即可.2.3VisualC++6.0的工具欄VisualC++6.0的工具欄2.3VisualC++6.0的工具欄2.4項(xiàng)目與項(xiàng)目工作區(qū)VC++6.0以項(xiàng)目工作區(qū)的形式來組織文件、項(xiàng)目和項(xiàng)目配置。每個(gè)項(xiàng)目工作區(qū)由工作目錄中的項(xiàng)目工作區(qū)文件組成。項(xiàng)目工作區(qū)文件(.dsw)含有工作區(qū)的定義和項(xiàng)目中所包含文件的所有信息。2.4.1創(chuàng)建新的項(xiàng)目工作區(qū)

如要?jiǎng)?chuàng)建新的空工作去,按下列步驟:1)選擇File菜單,在選中New選項(xiàng)。2)在對(duì)話框中選擇“工作區(qū)(Workspaces)”選項(xiàng)卡。3)輸入工作區(qū)名字,指定目錄即可。2.4項(xiàng)目與項(xiàng)目工作區(qū)VC++6.0以項(xiàng)目2.4項(xiàng)目與項(xiàng)目工作區(qū)但項(xiàng)目工作區(qū)也可以直接通過菜單的“新建(New)”->“工程(Projects)”選項(xiàng)卡自動(dòng)實(shí)現(xiàn),如圖:自動(dòng)創(chuàng)建2.4項(xiàng)目與項(xiàng)目工作區(qū)但項(xiàng)目工作區(qū)也可以直2.4項(xiàng)目與項(xiàng)目工作區(qū)項(xiàng)目基本概念

在VC中,項(xiàng)目中所有的源文件都是采用文件夾的方式進(jìn)行管理的,它將項(xiàng)目名作為文件夾名,在此文件夾下包含源程序代碼文件(.cpp,.h)、項(xiàng)目文件(.dsp)以及項(xiàng)目工作區(qū)文件(.dsw)等:.opt 關(guān)于開發(fā)環(huán)境的參數(shù)文件,如工具條位置等信息.aps(AppStudioFile)資源輔助文件,二進(jìn)制格式.clw ClassWizard信息文件.dsp(DeveloperStudioProject) 項(xiàng)目文件.plg 編譯信息文件.hpj(HelpProject) 幫助文件項(xiàng)目.mdp(MicrosoftDevStudioProject) 舊版本的項(xiàng)目文件.bsc 用于瀏覽項(xiàng)目信息.map 執(zhí)行文件的映像信息紀(jì)錄文件.pch(Pre-CompiledFile)預(yù)編譯文件,可以加快編譯速度,但是文件非常大.pdb(ProgramDatabase)記錄程序有關(guān)的一些數(shù)據(jù)和調(diào)試信息.exp 記錄DLL文件中的一些信息,只有在編譯DLL才會(huì)生成.ncb 無編譯瀏覽文件(nocompilebrowser)2.4項(xiàng)目與項(xiàng)目工作區(qū)項(xiàng)目基本概念2.4項(xiàng)目與項(xiàng)目工作區(qū)2.4.2項(xiàng)目工作區(qū)窗口VC++6.0項(xiàng)目工作區(qū)由ClassView(類顯示)面板、ResourceView(資源顯示)面板和FileView(文件顯示)面板組成。ClassView面板

該面板列出了當(dāng)前項(xiàng)目中的類。通過該面板可以瀏覽類的成員,包括成員函數(shù)和成員變量。如果成員是保護(hù)或私有類型,則它的左邊有一個(gè)鑰匙圖標(biāo)。雙擊成員,可以在源代碼窗口查看其源,雙擊類名,則打開聲明該類的頭文件…2.4項(xiàng)目與項(xiàng)目工作區(qū)2.4.2項(xiàng)目工作區(qū)窗2.4項(xiàng)目與項(xiàng)目工作區(qū)2.ResourceView面板

該面板擁有當(dāng)前項(xiàng)目中包含的所有資源。擴(kuò)展頂層文件夾(樹型)可以顯示資源類型。2.4項(xiàng)目與項(xiàng)目工作區(qū)2.ResourceVie2.4項(xiàng)目與項(xiàng)目工作區(qū)3.FileView面板

該面板用于顯示當(dāng)前項(xiàng)目中的各項(xiàng)目之間的包含關(guān)系和項(xiàng)目中包含的所有文件。擴(kuò)展頂層文件夾可以顯示所有文件。雙擊某個(gè)文件名或圖標(biāo)可以打開相應(yīng)的源程序編輯窗口。2.4項(xiàng)目與項(xiàng)目工作區(qū)3.FileView面板2.5資源及資源編輯器2.5.1資源與資源標(biāo)識(shí)

資源的分類 (1)快捷鍵列表 (2)工具欄按鈕 (3)鼠標(biāo)指針 (4)對(duì)話框 (5)HTML (6)圖標(biāo) (7)菜單 (8)字符串列表 (9)版本信息標(biāo)識(shí)符標(biāo)識(shí)符的命名規(guī)則: (1)

在標(biāo)識(shí)符名稱中允許使用字母a~z、A~Z、0~9以及下劃線。 (2)標(biāo)識(shí)符名稱不區(qū)分大小寫字母。 (3)

不能以數(shù)字開頭,如8BIT是不合法的標(biāo)識(shí)符名。 (4)

字符個(gè)數(shù)不得超過247個(gè)。

VC++包含各種資源,構(gòu)成界面成分,用戶可以通過它執(zhí)行某個(gè)操作或獲得信息.但資源只提供一個(gè)顯示信息或操作提示的一個(gè)窗口,如果應(yīng)用程序需要顯示信息或執(zhí)行某一操作,必須編寫相應(yīng)的程序代碼完成.資源的描述文件為“.rc”.VC++6.0提供資源編輯器來完成資源的創(chuàng)建和修改,編譯時(shí)可自動(dòng)將資源編譯鏈接到應(yīng)用程序中去.2.5資源及資源編輯器2.5.1資源與資源標(biāo)2.5資源及資源編輯器2.5.2資源基本操作

創(chuàng)建資源從“Insert”菜單選取“Resource”,如圖。[New]用來創(chuàng)建一個(gè)由ResourceType列表中指定類型的新資源,[Import]按鈕用于將外部已有的資源添加到當(dāng)前應(yīng)用程序中。(2)

從ResourceType列表中選擇一種資源類型,而后按[New]按鈕。(3)在項(xiàng)目工作區(qū)窗口的ResourceView頁面中,看到了剛才選中的資源的缺省標(biāo)識(shí)符,而且相應(yīng)的資源編輯器自動(dòng)打開。2.5資源及資源編輯器2.5.2資源基本操作2.5資源及資源編輯器2.5.3資源文件的管理

資源文件一經(jīng)創(chuàng)建,與資源相對(duì)應(yīng)的標(biāo)識(shí)符也被保存在Resource.h頭文件中。一般,在一個(gè)資源文件.rc中所保存的所有資源已經(jīng)滿足需要了,盡管如此,VC仍然允許用多個(gè)文件來存放資源。用View菜單中的“ResourceIncludes”菜單命令打開對(duì)話框(如圖)時(shí),可以看到Compile-timedirectives編輯框中已經(jīng)含有#include"res\sipp.rc2"。

2.5資源及資源編輯器2.5.3資源文件的管2.5資源及資源編輯器2.5.4資源標(biāo)識(shí)符

VC++中,源代碼或資源編輯器為了引用或識(shí)別資源,給每一資源(包括其中的項(xiàng))賦予一一對(duì)應(yīng)的標(biāo)識(shí)符,每當(dāng)資源被創(chuàng)建時(shí),系統(tǒng)能自動(dòng)給每一資源賦給一個(gè)默認(rèn)的符號(hào)名稱(標(biāo)識(shí)符,即ID),并賦予一個(gè)整數(shù)值與之對(duì)應(yīng),改定義保存在“Resource.h”文件中,可以通過菜單“View”->“ResourceSystems”打開查看。也可查看只讀(尚未被使用)的資源符號(hào),如圖:

2.5資源及資源編輯器2.5.4資源標(biāo)識(shí)符2.6一個(gè)控制臺(tái)應(yīng)用程序2.6.1用AppWizard創(chuàng)建用AppWizard創(chuàng)建一個(gè)控制臺(tái)應(yīng)用程序可按下列步驟進(jìn)行:(1)

選擇“File”“New”菜單命令,顯示出“New”對(duì)話框。(2)

選擇Projects標(biāo)簽,選中Win32ConsoleApplication項(xiàng)。(3)在ProjectName框中鍵入控制臺(tái)應(yīng)用程序項(xiàng)目名稱。第一次使用時(shí)最好確定該項(xiàng)目所在的文件夾以便于源文件的管理,既可在Location下的編輯框中直接鍵入文件夾名稱,也可單擊Browse按鈕擇一個(gè)已有的文件夾,如圖。

2.6一個(gè)控制臺(tái)應(yīng)用程序2.6.1用AppWiz2.6一個(gè)控制臺(tái)應(yīng)用程序(4)單擊[OK]。如圖。選中Asimpleapplication項(xiàng)。(5)單擊[Finish],如圖,單擊[OK]系統(tǒng)將自動(dòng)創(chuàng)建此應(yīng)用程序。2.6一個(gè)控制臺(tái)應(yīng)用程序(4)單擊[OK]。如圖。2.6一個(gè)控制臺(tái)應(yīng)用程序2.6.2理解程序框架

在項(xiàng)目工作區(qū)窗口中只能看到ClassView和FileView標(biāo)簽,如圖。切換到FileView頁面,可以看到AppWizard為生成了test.cpp、Stdafx.cpp、Stdafx.h以及ReadMe.txt四個(gè)文件。Stdafx.cpp是一個(gè)只有一條語句的空文件,Stdafx.h是VC為每個(gè)項(xiàng)目配置的用來預(yù)編譯的文件,ReadMe.txt是VC為每個(gè)項(xiàng)目配置的說明文件,包括對(duì)AppWizard產(chǎn)生文件類型的說明以及操作的一些技巧.test.cpp是AppWizard產(chǎn)生的“真正”具有實(shí)際意義的程序源代碼文件,幾乎所有的代碼都是添加在這個(gè)文件中的。2.6一個(gè)控制臺(tái)應(yīng)用程序2.6.2理解程序框架作業(yè)作業(yè)2.7程序調(diào)試2.7.1修正語法錯(cuò)誤

調(diào)試最初的任務(wù)主要是修正一些語法錯(cuò)誤,這些錯(cuò)誤包括: (1)

未定義或不合法的標(biāo)識(shí)符,如函數(shù)名、變量名和類名等。 (2)

數(shù)據(jù)類型或參數(shù)類型及個(gè)數(shù)不匹配。 上述錯(cuò)誤在編譯后,會(huì)在Output窗口中列出所有錯(cuò)誤項(xiàng)。若將光標(biāo)移到Output窗口中的錯(cuò)誤編號(hào)上,按F1鍵可啟動(dòng)MSDN并顯示出錯(cuò)誤的內(nèi)容,從而幫助用戶理解錯(cuò)誤產(chǎn)生的原因。 為了能使快速定位到錯(cuò)誤產(chǎn)生的源代碼位置,提供下列一些方法: (1)在Output窗口中雙擊某個(gè)錯(cuò)誤,或?qū)⒐鈽?biāo)移到該錯(cuò)誤處按Enter鍵,則該錯(cuò)誤被亮顯,狀態(tài)欄上顯示出錯(cuò)誤內(nèi)容,并定位到相應(yīng)的代碼行中,且該代碼行最前面有個(gè)藍(lán)色箭頭標(biāo)志。 (2)

按F4鍵可顯示下一錯(cuò)誤,并定位到相應(yīng)的源代碼行。 (3)

在Output窗口中的某個(gè)錯(cuò)誤項(xiàng)上,右擊鼠標(biāo),在彈出的快捷菜單中選擇“GoToError/Tag”命令。 語法錯(cuò)誤被修正后,編譯時(shí)會(huì)出現(xiàn)類似“test.exe-0error(s),0warning(s)”的字樣。并不是說,此項(xiàng)目完全沒有錯(cuò)誤,可能還有“異常”、“斷言”等其他錯(cuò)誤,而這些錯(cuò)誤在編譯時(shí)是不會(huì)顯示出來的,只有當(dāng)程序運(yùn)行后才會(huì)出現(xiàn)。

2.7程序調(diào)試2.7.1修正語法錯(cuò)誤2.7.2設(shè)置斷點(diǎn)

調(diào)試的斷點(diǎn)可以有下列類型:(1)

位置斷點(diǎn)、(2)

數(shù)據(jù)斷點(diǎn)、(3)條件斷點(diǎn)??旖莘绞?三種快捷方式可以設(shè)置位置斷點(diǎn):(1)

按快捷鍵F9。(2)

在Build工具欄上單擊按鈕。(3)在需要設(shè)置斷點(diǎn)的位置右擊,選擇“Insert/RemoveBreakpoint”命令。斷點(diǎn)標(biāo)志斷點(diǎn)標(biāo)志程序中斷的位置2.7程

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論