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

正文內(nèi)容

3c面向?qū)ο蟪绦蛟O(shè)計(jì)-文庫(kù)吧資料

2025-01-23 01:12本頁(yè)面
  

【正文】 show() …… B b。 pb=(B*)pa。 //強(qiáng)制類(lèi)型轉(zhuǎn)換 ? pasetB()。 pa=b。 ? 采用虛基類(lèi)解決; ? 格式(派生類(lèi)定義) class B:public virtual A ? 基類(lèi)定義不變; 多態(tài)性和虛函數(shù) ? 多態(tài)性:根據(jù)數(shù)據(jù)不同進(jìn)行不同的運(yùn)算處理,如加法,對(duì)于實(shí)數(shù)或整數(shù)就是將兩數(shù)相加,對(duì)于復(fù)數(shù)就是將對(duì)應(yīng)的實(shí)部和虛部相加; ? “一種接口、多種方法”; ? 多態(tài)性分為編譯時(shí)多態(tài)性和運(yùn)行時(shí)多態(tài)性; ? 編譯時(shí)多態(tài)性又稱(chēng)靜態(tài)多態(tài)性,用來(lái)處理函數(shù)名相同,但參數(shù)類(lèi)型不同的情況,通過(guò)重載機(jī)制來(lái)實(shí)現(xiàn); ? 運(yùn)行時(shí)多態(tài)性:處理函數(shù)名、參數(shù)和返回值都相同的情況,通過(guò)虛函數(shù)機(jī)制實(shí)現(xiàn); ? 派生類(lèi)的對(duì)象也可以認(rèn)為是其基類(lèi)的對(duì)象,但基類(lèi)的對(duì)象不是其派生類(lèi)的對(duì)象;(兒子像老爸) ? 允許基類(lèi)對(duì)象的指針指向其派生類(lèi)的對(duì)象,通過(guò)該指針只能訪問(wèn)派生類(lèi)中從基類(lèi)繼承的公有成員;(老爸的東西也是兒子的東西,老爸只能拿老爸自己的東西) ? 可以通過(guò)強(qiáng)制類(lèi)型轉(zhuǎn)換將基類(lèi)指針和派生類(lèi)指針互相轉(zhuǎn)換; 用基類(lèi)指針指向派生類(lèi)對(duì)象 ? 例: …… class B:public A …… void setB() …… A a,*pa。 ? P86 例 311 GetAB(){ return a+b。 ()。 …… B b1。}。 ? 若需要在派生類(lèi)中調(diào)用基類(lèi)中同名的成員函數(shù),可以使用作用域限定符“ ::”; class B:public A { public: void show(){……}。 …… B b1。//非法 } ? 基類(lèi)中不適合派生類(lèi)的成員可以在派生類(lèi)中重新定義,稱(chēng)為覆蓋 (override); ? 在派生類(lèi)中定義與基類(lèi)成員函數(shù)名稱(chēng)和參數(shù)表相同的函數(shù); ? 例 class A { public: void show(){……} }。 } class B: A { …… } void main() { B b1。 } ? 思考:如果不采用繼承定義 B類(lèi)? class B:public A { } ? public派生:基類(lèi)成員訪問(wèn)權(quán)限不變,可以通過(guò)派生類(lèi)對(duì)象訪問(wèn)基類(lèi)公有成員; ? private派生:基類(lèi)所有成員成為私有成員,只能通過(guò)派生類(lèi)的成員函數(shù)訪問(wèn)基類(lèi)非私有成員; ? protected派生:和 private差不多; ? 例 class A { private: int a。 } class B { private: int a。 ()。 public: int Geta(){return a}。 (a1)。 } void main() { A a1。 (a1)。 } void main() { A a1。 class B { public: void fun1(A) } ? class B { public: void fun1(A)。 B b1。 void B::fun1(A e) { =10。 B b1。 } void B::fun1(A e) { =10。 (a1)。 } void main() { A a1。 private: int a。 } ? 友元類(lèi):類(lèi) A可以聲明類(lèi) B為其友元類(lèi),類(lèi) B的所有成員函數(shù)都可以訪問(wèn) A的所有成員; ? 定義 class C { public: void fun2(A)。 B b1。 } void B::fun1(A e) { =10。 } ? class B { public: void fun1(A) } class A { friend void B::fun1(A)。 private: int a。 也可以通過(guò)對(duì)象調(diào)用: ()。 ? 沒(méi)有 this指針 。 ? 使用和一般成員變量一樣,也有公有、私有之分; ? 初始化必須在類(lèi)定義的外部: int Person::m_nCount=0。 { coutthishour‘ :” thisminute…… } this指針 Time::showTime { Display(this)。 ? } ? 指向?qū)ο蟊旧淼闹羔?,作為隱含參數(shù)傳給每個(gè)成員函數(shù); ? 例: void Time::showTime() { couthour’ :’ minute‘ :’ secondendl。 ?怪物 ()。 ?怪物 怪物 3(蛇 , 3000)。 ? } ? main主函數(shù) ? void main() ? { ? /******產(chǎn)生對(duì)象 ******/ ?怪物 怪物 1(狼 , 5000)。 ?把所有怪物的共同特征抽象出來(lái),于是我們得到一個(gè)類(lèi):怪物 ? class 怪物 ? { ? char 怪物名; ? int 血; ? } ?怪物 ::怪物 (怪物名 n,血 n) /*構(gòu)造函數(shù) */ ? { ?怪物名 =怪物名 n; ?血 =血 n; ? } ? 怪物 ::被打函數(shù) () ? { ? 血減少; ? } ? 怪物 ::判斷函數(shù) () ? { ? if (血 ==0) ? cout“你勝利了 !” 。 ?這里 s1是一個(gè)對(duì)象,產(chǎn)生了這個(gè)對(duì)象以后,才可以進(jìn)行相關(guān)操作。它的基本結(jié)構(gòu)是: ? 函數(shù)一() ? { ? …… ; ? } ? 函數(shù)二() ? { ? …… ; ? } ? …… ? 主函數(shù)() ? { ? …… ; ? } ?在面向?qū)ο蟮乃枷胫校?
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1