繼承與派生.doc_第1頁
繼承與派生.doc_第2頁
繼承與派生.doc_第3頁
繼承與派生.doc_第4頁
免費(fèi)預(yù)覽已結(jié)束,剩余1頁可下載查看

下載本文檔

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

文檔簡介

昆明理工大學(xué)信息工程與自動化學(xué)院學(xué)生實(shí)驗(yàn)報(bào)告(20102011學(xué)年 第2學(xué)期)課程名稱:雙語版C+程序設(shè)計(jì) 上機(jī)教室:計(jì)算中心202 2010年 6月 1 日年級、專業(yè)、班計(jì)科103學(xué)號201010405331 姓名趙顏成績實(shí)驗(yàn)項(xiàng)目名稱繼承與派生指導(dǎo)教師張力教師評語教師簽名: 年 月 日一、上機(jī)內(nèi)容和目的內(nèi)容:1定義一個基類Animal,有私有整型成員變量age,構(gòu)造其派生類dog,在其成員函數(shù)SetAge(int n)中直接給age賦值,看看會有什么問題,把a(bǔ)ge改為公有成員變量,還會有問題嗎?編程試試看。 2定義一個基類BaseClass,有整型成員變量Number,構(gòu)造其派生類DerivedClass,觀察構(gòu)造函數(shù)和析構(gòu)函數(shù)的執(zhí)行情況。 3定義一個車(vehicle)基類,具有MaxSpeed、Weight等成員變量,Run、Stop等成員函數(shù),由此派生出自行車(bicycle)類、汽車(motorcar)類。自行車(bicycle)類有高度(Height)等屬性,汽車(motorcar)類有座位數(shù)(SeatNum)等屬性。從bicycle和motorcar派生出摩托車(motorcycle)類,在繼承過程中,注意把vehicle設(shè)置為虛基類。如果不把vehicle設(shè)置為虛基類,會有什么問題?編程試試看。 4(選做)從實(shí)驗(yàn)6中的people(人員)類派生出student(學(xué)生)類,添加屬性:班號char classNO7;從people類派生出teacher(教師)類,添加屬性:職務(wù)char principalship11、部門char departmentE21。從student類中派生出graduate(研究生)類,添加屬性:專業(yè)char subject21、導(dǎo)師teacher adviser;從graduate類和teacher類派生出TA(助教生)類,注意虛基類的使用。重載相應(yīng)的成員函數(shù),測試這些類。類之間的關(guān)系如圖71所示。目的:1學(xué)習(xí)定義和使用類的繼承關(guān)系,定義派生類。2熟悉不同繼承方式下對基類成員的訪問控制。3學(xué)習(xí)利用虛基類解決二義性問題。二、上機(jī)步驟:打開計(jì)算機(jī)進(jìn)入WindowsXP在D盤建立自己的工作目錄進(jìn)入Microsoft Visual C+ 6.0文件/新建/文件/C+ Source File/位置/命名輸入源程序編譯/組建運(yùn)行四、源代碼:(2)題#include using namespace std;class BaseClassprivate:int Number;public:BaseClass(int a=0)Number=a;cout這是基類函數(shù)的構(gòu)造函數(shù)!endl; BaseClass()cout這是基類函數(shù)的析構(gòu)函數(shù)!endl; ;class DerivedClass : public BaseClassprivate: int NUM;public:DerivedClass(int a=0,int b=0) : BaseClass(a)NUM=b;cout這是派生函數(shù)的構(gòu)造函數(shù)!endl;DerivedClass()cout這是派生函數(shù)的析構(gòu)函數(shù)!endl;int main()DerivedClass x(10,12);return 0;(3)題: #include using namespace std;class vehicleprivate: int MaxSpeed;int Weight;public:vehicle(int a=0,int b=0)MaxSpeed=a;Weight=b;cout最大速度為(構(gòu)造):MaxSpeed 重量為(構(gòu)造):Weightendl; void Run()cout開始跑!endl; void Stop()cout剎車!nendl; vehicle() cout基類的析構(gòu)函數(shù)!endl; ;class bicycle : virtual public vehicleprivate:int Height;public:bicycle(int a=0,int b=0,int c=0) : vehicle(a,b)Height=c;cout自行車高度為(構(gòu)造):Heightendl; bicycle()cout自行車析構(gòu)函數(shù)!endl;class motorcar : virtual public vehicleprivate:int SeatNum;public:motorcar(int a=0,int b=0,int d=0) : vehicle(a,b)SeatNum=d;cout汽車座位數(shù)為(構(gòu)造):SeatNumendl; motorcar()cout汽車析構(gòu)函數(shù)!endl;class motorcycle : public bicycle,public motorcar public:motorcycle(int a=0,int b=0,int c=0,int d=0) : bicycle(a,b,c),motorca

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論