C上機(jī)實(shí)驗(yàn)報(bào)告_第1頁(yè)
C上機(jī)實(shí)驗(yàn)報(bào)告_第2頁(yè)
C上機(jī)實(shí)驗(yàn)報(bào)告_第3頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡(jiǎn)介

SANY標(biāo)準(zhǔn)化小組#QS8QHH-HHGX8Q8-GNHHJ8-HHMHGN#C++程序?qū)嶒?yàn)報(bào)告實(shí)驗(yàn)?zāi)康恼莆疹惖亩x和使用掌握類的定義和對(duì)象的聲明復(fù)習(xí)具有不同訪問(wèn)屬性的成員的訪問(wèn)方式觀察構(gòu)造函數(shù)和析構(gòu)函數(shù)的執(zhí)行過(guò)程5?學(xué)習(xí)類的組合使用方法6?使用VC^+的debug調(diào)試功能觀察程序流程,跟蹤觀察類的構(gòu)造函數(shù).析構(gòu)函數(shù)、成員函數(shù)的執(zhí)行順序?qū)嶒?yàn)要求1.左義一個(gè)CPU類,包含等級(jí)(rank).頻率(frequency)、電壓(voltage)等屬性,有兩個(gè)公有成員函數(shù)run、stop。其中,rank為枚舉類型CPU_Rank,左義為enumCPU_Rank{Pl=l,P2,P3,P4,P5,P6,P7},frequency為單位是MHz的整型數(shù),voltage為浮點(diǎn)型的電壓值。觀察構(gòu)造函數(shù)和析構(gòu)函數(shù)的調(diào)用順序。2?定義一個(gè)簡(jiǎn)單的Computer類,有數(shù)據(jù)成員芯片(cpu).內(nèi)存(ram)>光驅(qū)(cdrom)等等,有兩個(gè)公有成員函數(shù)run、stop。cpu為CPU類的一個(gè)對(duì)象,ram為RAM類的一個(gè)對(duì)象,cdrom為CDROM類的一個(gè)對(duì)象,定義并實(shí)現(xiàn)這個(gè)類。(選做)設(shè)計(jì)一個(gè)用于人事管理的People(人員)類。考慮到通用性這里只抽象出所有類型人員都具有的屬性:number(編號(hào)).sex(性別)、birthday(出生日期)、id(身份證號(hào))等等。其中“出生日期”定義為一個(gè)“日期”類內(nèi)嵌子對(duì)象。用成員函數(shù)實(shí)現(xiàn)對(duì)人員信息的錄入和顯示。要求包括:構(gòu)造函數(shù)和析構(gòu)函數(shù)、拷貝構(gòu)造函數(shù).內(nèi)聯(lián)成員函數(shù)、組合。實(shí)驗(yàn)內(nèi)容及實(shí)驗(yàn)步驟首先定義枚舉類型CPU.Rank,例如enumCPU_Rank{Pl=l,P2,P3,P4,P5,P6,P7},再定義CPU類,包含等級(jí)(rank)頻率(frequency)、電壓(voltage)等私有數(shù)據(jù)成員,上義成員函數(shù)run、stop,用來(lái)輸出提示信息,在構(gòu)造函數(shù)和析構(gòu)函數(shù)中也可以輸出提示信息。在主程序中左義一個(gè)CPU的對(duì)象,調(diào)用英成員函數(shù),觀察類對(duì)象的構(gòu)造與析構(gòu)順序,以及成員函數(shù)的調(diào)用。程序名:。源程序#include<iostream>usingnamespacestd;enumCPU.Rank{Pl=l,P2,P3,P4,P5,P6,P7};classCPU{private:CPU_Rankrank;intfrequency;floatvoltage;public:CPU(CPU_Rankr,intf,floatv);~CPU();CPU_RankGetRank0{returnrank;}intGetFrequency0{returnfrequency;}floatGetVoltageO{returnvoltage;}voidSetRank(CPU_Rankr){rank=r:}voidSetFrequency(intf){frequency二f;}voidSetVoltage(floatv){voltage=v;}voidRun0{cout<<"CPU開始運(yùn)行!"<<endl;}voidStop0{cout??/CPU停止運(yùn)行!"<<endl;}};CPU::CPU(CPU.Rankr,intf,floatv){ranker;frequency=f;voltage=v;構(gòu)造了一個(gè)CPU!"<<endl;}CPU:廣CPU(){cout〈<"析構(gòu)了一個(gè)CPU!/z?endl;}voidmainO{CPUa(P4,200,;0;0;}運(yùn)行結(jié)果:2?使用debug調(diào)試功能觀察程序的運(yùn)行流程,跟蹤觀察類的構(gòu)造函數(shù)、析構(gòu)函數(shù)、成員函數(shù)的執(zhí)行順序。調(diào)試操作步驟如下:?jiǎn)螕鬊uildStartDebugStepInto命令,或按下快捷鍵Fll,系統(tǒng)進(jìn)入單步執(zhí)行狀態(tài),程序開始運(yùn)行,一個(gè)DOS窗口出現(xiàn),此時(shí)VisualStudio中光標(biāo)停在main()函數(shù)的入口處;從Debug菜單或Debug2E具欄中單擊StepOver,此時(shí),光標(biāo)下移,程序準(zhǔn)備執(zhí)行CPU對(duì)象的初始化;單擊StepInto,程序準(zhǔn)備執(zhí)行CPU類的構(gòu)造函數(shù);連續(xù)單擊StepOver,觀察構(gòu)造函數(shù);此時(shí)程序準(zhǔn)備執(zhí)行CPU對(duì)象的run()函數(shù),單擊StepInto,程序進(jìn)入:run()成員函數(shù),連續(xù)單擊StepOver,直到回到nidin()函數(shù)。繼續(xù)執(zhí)行程序,參照上述的方法,觀察程序的執(zhí)行順序,加深對(duì)類的構(gòu)造函數(shù)、析構(gòu)函數(shù)、成員函數(shù)的執(zhí)行順序的認(rèn)識(shí)。再試試Debug菜單欄中別的菜單項(xiàng),熟悉Debug的各種方法。運(yùn)行結(jié)果:首先定義CPU類(可使用笫二題中的CPU類)、RAH類、CDR0M類。再定義Computer類;定義私有數(shù)據(jù)成員cpu、ram^cdrom,定義公有成員函數(shù)run、stop,可在其中輸出提示信息。在主程序中定義一個(gè)Computer的對(duì)象,調(diào)用其成員函數(shù),觀察類對(duì)象及其成員變量的構(gòu)造與析構(gòu)順序,以及成員函數(shù)的調(diào)用。程序名:.源程序#include<iostream>usingnamespacestd;enumCPU_Rank{Pl二1,P2,P3,P4,P5,P6,P7};classCPU{private:CPU^Rankrank;intfrequency;用debug調(diào)試功能觀察程序的運(yùn)行流程,跟蹤觀察類的構(gòu)造函數(shù)、析構(gòu)函數(shù)、成員函數(shù)的執(zhí)行順序,特別注意觀察成員變量的構(gòu)造與析構(gòu)順序。運(yùn)行結(jié)果:思考題如何定義一個(gè)類數(shù)據(jù),構(gòu)造函數(shù),析構(gòu)函數(shù),復(fù)制構(gòu)造函數(shù),方法。。。如何定義類的構(gòu)造函數(shù)和析構(gòu)函數(shù)構(gòu)造函數(shù)通用于實(shí)例化象自內(nèi)部數(shù)拯員初始化設(shè)程初始值、配內(nèi)存空間等析構(gòu)函數(shù)則用于刪除象做收尾工作比釋放申請(qǐng)空間等類的各成員函數(shù)的執(zhí)行順序是怎樣的按調(diào)用順序執(zhí)行類組合時(shí)對(duì)象的構(gòu)造順序是怎樣的C++構(gòu)造函數(shù)中初始化成員_參數(shù)列表初始化成員(必須用原因:對(duì)象成員的初始化,const修飾的成員的初始化,引用成員的初始化,子類調(diào)用父類的構(gòu)造函數(shù)初始化父類成員)—參數(shù)列表在構(gòu)造函數(shù)執(zhí)行之前執(zhí)行,參數(shù)列表中執(zhí)行的是初始化(所有的成員,無(wú)論是否出

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論