




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、 Teacher類的屬性包括:編號(hào)姓名級(jí)別月工資教工總數(shù)(靜態(tài)變量)Teacher類的成員函數(shù)包括:構(gòu)造函數(shù)析構(gòu)函數(shù)(應(yīng)為虛函數(shù))設(shè)置級(jí)別計(jì)算工資(應(yīng)為虛函數(shù))顯示教工基本信息(應(yīng)為虛函數(shù)) 從Teacher類可以派生教學(xué)人員類(NorProf)和研究人員類(ResProf):NorProf類從Teacher類派生類,其屬性還包括:每月授課課時(shí)數(shù) 每課時(shí)補(bǔ)助NorProf類的成員函數(shù)包括:構(gòu)造函數(shù)設(shè)置級(jí)別計(jì)算工資(工資包括基本工資+課時(shí)補(bǔ)助)顯示教工基本信息ResProf類從Teacher類派生,其屬性還包括: 每月承擔(dān)的科研經(jīng)費(fèi)總數(shù)提成比例ResProf類的成員函數(shù)包括:構(gòu)造函數(shù)設(shè)置級(jí)別計(jì)算
2、工資(工資包括基本工資+科研經(jīng)費(fèi)提成)顯示教工基本信息特聘教授SpecProf類,該類從教學(xué)人員類NorProf和研究人員類ResProf派生SpecProf類的屬性還包括:每月固定津貼SpecProf類的成員函數(shù)包括:構(gòu)造函數(shù)設(shè)置級(jí)別計(jì)算工資(基本工資+津貼+課時(shí)補(bǔ)助+科研提成)顯示教工基本信息 責(zé)任教授RespProf類,該類從教學(xué)人員類NorProf和研究人員類ResProf派生RespProf類的屬性還包括:每月固定津貼RespProf類的成員函數(shù)包括:構(gòu)造函數(shù)設(shè)置級(jí)別計(jì)算工資(基本工資+津貼+課時(shí)補(bǔ)助)顯示教工基本信息成員函數(shù)的重載、覆蓋與隱藏成員函數(shù)的重載、覆蓋與隱藏 成員函數(shù)的重
3、載、覆蓋(override)與隱藏很容易混淆,C+程序員必須要搞清楚概念,否則錯(cuò)誤將防不勝防。 成員函數(shù)被成員函數(shù)被重載重載的特征:的特征:(1 1)相同的范圍(在同一個(gè)類中);)相同的范圍(在同一個(gè)類中);(2 2)函數(shù)名字相同;)函數(shù)名字相同;(3 3)參數(shù)不同;)參數(shù)不同;(4 4)virtualvirtual關(guān)鍵字可有可無。關(guān)鍵字可有可無。 覆蓋覆蓋是指派生類函數(shù)覆蓋基類函數(shù),特征是:是指派生類函數(shù)覆蓋基類函數(shù),特征是:(1 1)不同的范圍(分別位于派生類與基類);)不同的范圍(分別位于派生類與基類);(2 2)函數(shù)名字相同;)函數(shù)名字相同;(3 3)參數(shù)相同;)參數(shù)相同;(4 4)基
4、類函數(shù)必須有)基類函數(shù)必須有virtualvirtual關(guān)鍵字。關(guān)鍵字。 隱藏隱藏是指派生類的函數(shù)屏蔽了與其同名的基類函數(shù),規(guī)則如下:是指派生類的函數(shù)屏蔽了與其同名的基類函數(shù),規(guī)則如下:(1 1)如果派生類的函數(shù)與基類的函數(shù)同名,但是參數(shù)不同。此時(shí),不論有)如果派生類的函數(shù)與基類的函數(shù)同名,但是參數(shù)不同。此時(shí),不論有無無virtualvirtual關(guān)鍵字,基類的函數(shù)將被隱藏(注意別與重載混淆)。關(guān)鍵字,基類的函數(shù)將被隱藏(注意別與重載混淆)。(2 2)如果派生類的函數(shù)與基類的函數(shù)同名,并且參數(shù)也相同,但是基類函)如果派生類的函數(shù)與基類的函數(shù)同名,并且參數(shù)也相同,但是基類函數(shù)沒有數(shù)沒有virtu
5、alvirtual關(guān)鍵字。此時(shí),基類的函數(shù)被隱藏(注意別與覆蓋混淆)。關(guān)鍵字。此時(shí),基類的函數(shù)被隱藏(注意別與覆蓋混淆)。 #include class Basepublic: virtualvoid f(float x) cout Base:f(float) x endl; void g(float x) cout Base:g(float) x endl; void h(float x) cout Base:h(float) x endl; ;class Derived : public Basepublic: virtualvoid f(float x) cout Derived:f(f
6、loat) x endl; void g(int x) cout Derived:g(int) x endl; void h(float x) cout Derived:h(float) x f(3.14f);pd-f(3.14f);pb-g(3.14f);pd-g(3.14f); pb-h(3.14f);pd-h(3.14f);結(jié)果: Derived:f(float) 3.14 Derived:f(float) 3.14 Base:g(float) 3.14 Derived:g(int) 3 Base:h(float) 3.14 Derived:h(float) 3.14class Base
7、public:void f(int x);class Derived : public Basepublic:void f(char *str);void Test(void)Derived *pd = new Derived;pd-f(10); / errorclass Derived1 : public Basepublic:void f(char *str);void f(int x) Base:f(x); ; void Test1(void)Derived1 *pd = new Derived1;pd-f(10); / ok隱藏規(guī)則至少有兩個(gè)存在的理由:1.寫語句pd-f(10)的人可能真的想調(diào)用Derived:f(char *)函數(shù),只是他誤將參數(shù)寫錯(cuò)了。有了隱藏規(guī)則,編譯器就可以明確指出錯(cuò)誤。否則,編譯器會(huì)靜悄悄地將錯(cuò)就錯(cuò),程序員將很難發(fā)現(xiàn)這個(gè)錯(cuò)誤,留下禍根。2.假如類Derived有多個(gè)基類(多重繼承),有時(shí)搞不清楚哪些基類定義了函數(shù)f。如果沒有隱藏規(guī)則,那么pd-f(10)可能會(huì)調(diào)用一個(gè)出乎意料的基類函數(shù)f。盡管隱藏規(guī)則看起來不怎么有道理,但它的確能消滅這些意外。小結(jié)虛函數(shù)是C+作為面向?qū)ο蟪绦蛟O(shè)計(jì)語言對(duì)多態(tài)從語法上提供的有力支
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030中國黃豆醬行業(yè)現(xiàn)狀供需分析及市場深度研究發(fā)展前景及規(guī)劃可行性分析研究報(bào)告
- 2025-2030中國透明敷料行業(yè)深度調(diào)研及投資前景預(yù)測研究報(bào)告
- 2025年住院醫(yī)師規(guī)范培訓(xùn)(各省)-四川住院醫(yī)師兒科歷年參考題庫含答案解析(5卷單選100題)
- 2025-2030中國網(wǎng)絡(luò)連接IC卡水智能儀表行業(yè)市場發(fā)展趨勢與前景展望戰(zhàn)略研究報(bào)告
- 2025年住院醫(yī)師考試-精神科住院醫(yī)師歷年參考題庫含答案解析(5卷100題)
- 2025年住院醫(yī)師考試-臨床病理科住院醫(yī)師歷年參考題庫含答案解析(5卷單項(xiàng)選擇題100題)
- 小學(xué)生敬老院活動(dòng)總結(jié)
- 中醫(yī)文化建設(shè)方案
- 兒童電子支氣管鏡課件
- 零售藥店促銷方案
- 模擬電子技術(shù)基礎(chǔ)知到章節(jié)答案智慧樹2023年蘭州石化職業(yè)技術(shù)大學(xué)
- JJF 1915-2021傾角儀校準(zhǔn)規(guī)范
- GA/T 1310-2016法庭科學(xué)筆跡鑒定意見規(guī)范
- 2023年本科招生考試
- 新入職護(hù)士培訓(xùn)考試試題及答案
- 《消防安全技術(shù)實(shí)務(wù)》課本完整版
- 北師大版七年級(jí)數(shù)學(xué)下冊(cè) 與信息技術(shù)相融合的數(shù)學(xué)教學(xué)案例 教案
- 鈍針穿刺法臨床應(yīng)用護(hù)理
- 水產(chǎn)養(yǎng)殖行業(yè)報(bào)告
- 鍋爐MFT供電回路的分析
- 公共基礎(chǔ)知識(shí)輔導(dǎo)課件
評(píng)論
0/150
提交評(píng)論