c語(yǔ)言程序設(shè)計(jì)實(shí)驗(yàn)答案繼承與派生_第1頁(yè)
已閱讀1頁(yè),還剩17頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、1實(shí)驗(yàn)實(shí)驗(yàn)07繼承與派生(繼承與派生(4學(xué)時(shí))學(xué)時(shí))(第7章繼承與派生)一、實(shí)驗(yàn)?zāi)康囊弧?shí)驗(yàn)?zāi)康?1)學(xué)習(xí)聲明和使用類的繼承關(guān)系,聲明派生類。學(xué)習(xí)聲明和使用類的繼承關(guān)系,聲明派生類。(2)熟悉不同繼承方式下對(duì)基類成員的訪問控制。熟悉不同繼承方式下對(duì)基類成員的訪問控制。(3)學(xué)習(xí)利用虛基類解決二義性問題。學(xué)習(xí)利用虛基類解決二義性問題。二、實(shí)驗(yàn)任務(wù)二、實(shí)驗(yàn)任務(wù)7_1聲明一個(gè)基類聲明一個(gè)基類Animal。有私有整型成員變量有私有整型成員變量a

2、ge,構(gòu)造其派生類,構(gòu)造其派生類dog,在其成員函數(shù),在其成員函數(shù)SetAge(intn)中直接給中直接給age賦值,看看會(huì)有什么問題,把賦值,看看會(huì)有什么問題,把a(bǔ)ge改為公有成員變量,還會(huì)有問題嗎?編程試試看。改為公有成員變量,還會(huì)有問題嗎?編程試試看。7_2聲明一個(gè)基類聲明一個(gè)基類BaseClass。有整型成員變量有整型成員變量Number,構(gòu)造其派生類,構(gòu)造其派生類DerivedClass,觀察構(gòu)造函數(shù)和析構(gòu)函數(shù)的,觀察構(gòu)造函數(shù)

3、和析構(gòu)函數(shù)的執(zhí)行情況。執(zhí)行情況。7_3聲明一個(gè)車聲明一個(gè)車(vehicle)基類?;?。具有具有MaxSpeed、Weight等成員變量,等成員變量,Run、Stop等成員函數(shù),由此派生出自行車等成員函數(shù),由此派生出自行車(bicycle)類、汽車類、汽車(motcar)類。自行車類。自行車(bicycle)類有高度類有高度(Height)等屬性,汽車等屬性,汽車(motcar)類有座位數(shù)類有座位數(shù)(SeatNum)等屬性。從等屬性。從

4、bicycle和motcar派生出摩托車派生出摩托車(motcycle)類,在繼類,在繼承過程中,注意把承過程中,注意把vehicle設(shè)置為虛基類。如果不把設(shè)置為虛基類。如果不把vehicle設(shè)置為虛基類,會(huì)有什么問題?設(shè)置為虛基類,會(huì)有什么問題?編程試試看。編程試試看。3三、實(shí)驗(yàn)步驟三、實(shí)驗(yàn)步驟1.(編程)聲明基類(編程)聲明基類Animal,成員變量,成員變量age聲明為私有的。聲明為私有的。構(gòu)造派生類構(gòu)造派生類dog,在其成員函數(shù)

5、,在其成員函數(shù)SetAge(intn)中直接對(duì)中直接對(duì)age賦值時(shí),會(huì)出現(xiàn)類似以下賦值時(shí),會(huì)出現(xiàn)類似以下的錯(cuò)誤提示:(注:在桌面創(chuàng)建一個(gè)文本文件,將輸出框的內(nèi)容復(fù)制到文本文件中,再?gòu)?fù)的錯(cuò)誤提示:(注:在桌面創(chuàng)建一個(gè)文本文件,將輸出框的內(nèi)容復(fù)制到文本文件中,再?gòu)?fù)制到制到Wd文件中,不會(huì)出現(xiàn)漢字的亂碼)文件中,不會(huì)出現(xiàn)漢字的亂碼)用private時(shí)的結(jié)果:時(shí)的結(jié)果:1已啟動(dòng)生成:項(xiàng)目:cpp配置:DebugWin321生成啟動(dòng)時(shí)間為2013

6、21811:10:35。1InitializeBuildStatus:1正在創(chuàng)建“Debugcpp.unsuccessfulbuild”,因?yàn)橐阎付ā癆lwaysCreate”。1ClCompile:1main.cpp1f:projectscppcppmain.cpp(13):errC2248:“Animal::age”:無法訪問private成員(在“Animal”類中聲明)1f:projectscppcppmain.cpp(8):參

7、見“Animal::age”的聲明1f:projectscppcppmain.cpp(5):參見“Animal”的聲明1f:projectscppcppmain.cpp(14):errC2248:“Animal::age”:無法訪問private成員(在“Animal”類中聲明)1f:projectscppcppmain.cpp(8):參見“Animal::age”的聲明1f:projectscppcppmain.cpp(5):參見“A

8、nimal”的聲明11生成失敗。11已用時(shí)間00:00:03.28==========生成:成功0個(gè),失敗1個(gè),最新0個(gè),跳過0個(gè)==========把a(bǔ)ge改為公有變量后重新編譯就可以了。程序名:改為公有變量后重新編譯就可以了。程序名:lab7_1.cpp。★程序及運(yùn)行結(jié)果:程序及運(yùn)行結(jié)果:lab7_1.cpp#includeusingnamespacestdclassAnimalprivate:private時(shí)出錯(cuò)public:pu

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(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)論