freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

vc第八章多態(tài)性課件(留存版)

  

【正文】 D1 d1。 純虛函數(shù)與抽象類(lèi) 56 抽象類(lèi)的一般形式 class 類(lèi)名 { virtual 類(lèi)型 函數(shù)名 (參數(shù)表 )=0。d1。 – 抽象類(lèi)的主要作用是通過(guò)它為一個(gè)類(lèi)族建立一個(gè)公共的接口,使它們能夠更有效地發(fā)揮多態(tài)特性。 //聲明派生類(lèi)對(duì)象 p=amp。所以如果派生類(lèi)中需要很多虛函數(shù),就要在基類(lèi)中也定義同樣的虛函數(shù),重復(fù)代碼很多 ? 解決方案:在類(lèi)中定義純虛函數(shù),不需提供任何實(shí)際操作定義 純虛函數(shù)與抽象類(lèi) 53 純虛函數(shù) ? 純虛函數(shù)是一個(gè)在基類(lèi)中說(shuō)明的虛函數(shù),在基類(lèi)中沒(méi)有定義具體的操作內(nèi)容,要求派生類(lèi)根據(jù)需要定義自己的版本 ? 純虛函數(shù)的聲明格式: – virtual 函數(shù)類(lèi)型 函數(shù)名 (參數(shù)表 ) = 0 。 } }。 right ? 27. 5 = x 。 imag=i。 Hour=Hour%24。 NewS 60) { Hour=NewH。 運(yùn)算符重載 include class Clock //時(shí)鐘類(lèi)聲明 { public: //外部接口 Clock(int NewH=0, int NewM=0, int NewS=0)。 //聲明復(fù)數(shù)類(lèi)的對(duì)象 coutc1=。} //構(gòu)造函數(shù) plex operator + (plex c2)。 }。 運(yùn)算符重載 5 問(wèn)題舉例 ——復(fù)數(shù)的運(yùn)算 ? 用“ +”、“ ”能夠?qū)崿F(xiàn)復(fù)數(shù)的加減運(yùn)算嗎? ? 實(shí)現(xiàn)復(fù)數(shù)加減運(yùn)算的方法 ——重載 “ +”、“ ”運(yùn)算符 運(yùn)算符重載 6 運(yùn)算符重載的實(shí)質(zhì) ? 運(yùn)算符重載是對(duì)已有的運(yùn)算符賦予多重含義 ? 必要性 – C++中預(yù)定義的運(yùn)算符其運(yùn)算對(duì)象只能是基本數(shù)據(jù)類(lèi)型,而不適用于用戶自定義類(lèi)型(如類(lèi)) ? 實(shí)現(xiàn)機(jī)制 – 將指定的運(yùn)算表達(dá)式轉(zhuǎn)化為對(duì)運(yùn)算符函數(shù)的調(diào)用,運(yùn)算對(duì)象轉(zhuǎn)化為運(yùn)算符函數(shù)的實(shí)參。 //+重載為成員函數(shù) plex operator (plex c2)。()。 void ShowTime()。 Minute=NewM。 } } coutClock++: 。 } //構(gòu)造函數(shù) friend plex operator + (plex c1,plex c2)。 // operator = (plex(27. 5),x) error 運(yùn)算符重載 33 復(fù)雜運(yùn)算符的重載 ? 下標(biāo)運(yùn)算符 [ ] –只能被重載為類(lèi)的成員函數(shù),且重載時(shí)只能顯式聲明一個(gè)參數(shù) –舉例: ? 函數(shù)調(diào)用運(yùn)算符() –可以將函數(shù)調(diào)用運(yùn)算符看作下標(biāo)運(yùn)算符 [ ]的擴(kuò)展,可以帶有零個(gè)或多個(gè)參數(shù) –舉例:利用重載函數(shù)調(diào)用運(yùn)算符實(shí)現(xiàn) f(x,y)=x*y+5 運(yùn)算符重載 34 靜態(tài)聯(lián)編與動(dòng)態(tài)聯(lián)編 ? 聯(lián)編: –程序自身彼此關(guān)聯(lián)的過(guò)程,確定程序中的操作調(diào)用與執(zhí)行該操作的代碼間的關(guān)系。 void fun(B0 *ptr) //普通函數(shù) { ptrdisplay()。 ? 聲明為純虛函數(shù)后,基類(lèi)中就不再給出函數(shù)的實(shí)現(xiàn)部分,純虛函數(shù)的函數(shù)體由各派生類(lèi)給出 ? 注意區(qū)分函數(shù)體為空的虛函數(shù)與純虛函數(shù)的區(qū)別 54 抽象類(lèi) ?抽象類(lèi)是一種特殊的類(lèi),為一族類(lèi)提供統(tǒng)一的操作界面 ?帶有 純虛函數(shù) 的類(lèi)是抽象類(lèi),只能作為基類(lèi)來(lái)使用,不能實(shí)例化。b1。 。 //調(diào)用派生類(lèi) B1函數(shù)成員 p=amp。 ? 對(duì)于暫時(shí)無(wú)法實(shí)現(xiàn)的函數(shù),可以聲明為純虛函數(shù),留給派生類(lèi)去實(shí)現(xiàn)。 //聲明基類(lèi)對(duì)象和指針 B1 b1。 ? 動(dòng)態(tài)聯(lián)編 –聯(lián)編工作在程序運(yùn)行時(shí)執(zhí)行,在程序運(yùn)行時(shí)才確定將要調(diào)用的函數(shù)。 //運(yùn)算符 重載為友元函數(shù) void display()。 } void main() { Clock myClock(23,59,59)。 } else cout “ Time error! “ endl。 //前置單目運(yùn)算符重載 void operator ++(int)。()。 //輸出復(fù)數(shù) private: //私有數(shù)據(jù)成員 double real。 運(yùn)算符重載 7 運(yùn)算符重載 規(guī)則和限制 ? 可以重載 C++中除下列運(yùn)算符外的所有運(yùn)算符: . * :: ?: sizeof() ? 只能重載 C++語(yǔ)言中已有的運(yùn)算符,不可臆造新的。 //顯示復(fù)數(shù)的值 private: double real。
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1