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

正文內(nèi)容

[工學(xué)]第11章__繼承與派生(參考版)

2025-07-25 10:19本頁面
  

【正文】 delete ptr。 } }。 } }。 } }。 } ~A() {} }。則 C是 最派生類 ; 最派生類 B D C A E B(…):A(…) ... C(…):A(…) ... D(…):B(...),C(…),A(…) ... E(…):D(...),A(…) ... 構(gòu)造函數(shù) C ++ 語 言 程 序 設(shè) 計(jì) 虛基類的構(gòu)造函數(shù) (續(xù) ) 例 :分析下列程序的輸出結(jié)果。則 D是 最派生類 ; 若定義 B b。 } B () C () () 正確 能夠唯一確定調(diào)用類 A的 f(); C ++ 語 言 程 序 設(shè) 計(jì) 虛基類的引入和說明 (續(xù) ) 虛基類 非虛基類 B C A D B C D A A ?虛基類與非虛基類的存儲(chǔ)結(jié)構(gòu) C ++ 語 言 程 序 設(shè) 計(jì) 虛基類的構(gòu)造函數(shù) ?派生類中只有 一個(gè)虛基類子對(duì)象 ; ?虛基類構(gòu)造函數(shù)必須只被調(diào)用一次,目的是要保證虛基類子對(duì)象只被初始化一次; ?最派生類 :繼承結(jié)構(gòu)中建立對(duì)象時(shí)所指定的類; ?虛基類子對(duì)象 由 最派生類 的構(gòu)造函數(shù)通過調(diào)用虛基類的構(gòu)造函數(shù)進(jìn)行 初始化 ; ?在一個(gè)成員初始化列表中出現(xiàn)對(duì)虛基類和對(duì)非虛基類構(gòu)造函數(shù)的調(diào)用時(shí), 虛基類的構(gòu)造函數(shù)先于非虛基類的構(gòu)造函數(shù)的執(zhí)行; ?最派生類的構(gòu)造函數(shù)的成員初始化列表中必須給出對(duì)虛基類的構(gòu)造函數(shù)的調(diào)用;如果未列出,則相應(yīng)的虛基類必須有缺省構(gòu)造函數(shù); C ++ 語 言 程 序 設(shè) 計(jì) 虛基類的構(gòu)造函數(shù) (續(xù) ) 若 定義 E e。 ()。 }。 class D:public B,public C { public: int g()。 class C:virtual public B { protected: int c。 class B:virtual public A { protected: int b。 protected: int a。 ()。 }。 coutcendl。} void Print() {B1::Print()。 C ++ 語 言 程 序 設(shè) 計(jì) 二義性問題(續(xù)) class C:public B1,public B2 { C(int i,int j,int k,int l,int m):B1(i,j),B2(k,l),c(m) { coutConstructor C. endl。 } private: int b2。} void Print() { A::Print()。 coutConstructor B2. endl。 }。 coutb1endl。 } ~B1() {coutDestructor B1. endl。 class B1:public A { public: B1(int i,int j):A(i) { b1=j。} private: int a。 } ~A() {coutDestructor A. endl。 include class A { public: A(int i) { a=i。 ()。 class C:public A,public B { }。 class B { private: void fun()。當(dāng)選擇該名字時(shí),使用支配者的名字; 說明 ?一個(gè)類不能從同一個(gè)類中 直接繼承 一次以上; ?二義性檢查在訪問控制和類型檢查之前進(jìn)行 ,訪問控制和類型檢查不能解決二義性問題; C ++ 語 言 程 序 設(shè) 計(jì) 二義性問題(續(xù)) class A { public: void fun()。 或 ::a。 C C ++ 語 言 程 序 設(shè) 計(jì) 二義性問題(續(xù)) 問題:若定義 C c1。 private: int c。 int f()。 }。 int b2。 或 ::f()。 () () () C C ++ 語 言 程 序 設(shè) 計(jì) 二義性問題(續(xù)) 問題:若定義 C c1。 }。 { public: void f()。 void h()。 void g()。 ()。 couta()endl。 } void A::Print() { B1::Print()。 A::A(int i,int j,int k,int l):B1(i),B2(j),bb(k) { a=l。 B3 bb。 多繼承 C ++ 語 言 程 序 設(shè) 計(jì) 多繼承的構(gòu)造函數(shù) (續(xù) ) void Print()。 }。 } int Getb3() {return b3。 class B3 { public: B3(int i) { b3=i。} C ++ 語 言 程 序 設(shè) 計(jì) 多繼承的構(gòu)造函數(shù) (續(xù) ) private: int b2。 coutConstructor B2. endl。 }。 } void Print() {coutb1endl。 include class B1 { public: B1(int i) { b1=i。 參見[例 ]。 derived d; base *pb=amp。rb=b。 例如: derived d; base b; b=d; ② 派生類的對(duì)象可用來對(duì)基類對(duì)象的引用進(jìn)行初始化。 class derived : public base { ┇ }; ① 派生類的對(duì)象可給基類對(duì)象賦值 ② 派生類的對(duì)象可用來對(duì)基類對(duì)象的引用進(jìn)行初始化 ③ 派生類的對(duì)象地址值可用來給基類的指針賦值 參見[例 ]。 賦值兼容規(guī)則是指在公有派生的情況下,一個(gè)派生類的對(duì)象可以作為基類對(duì)象來使用的地方。派生類的對(duì)象是基類的對(duì)象。子類型和類型適應(yīng)是不可逆的。 } 輸出: 0,0,0 0,5,0 4,5,6 C ++ 語 言 程 序 設(shè) 計(jì) 1. 子類型 有一種類型 A,它至少包含有另一種類 B的所有行為,則稱類型 A是類型 B的子類型。 ()。 void main() { B d1,d2(5),d3(4,5,6)。 } private: int b1,b2。} C ++ 語 言 程 序 設(shè) 計(jì) 構(gòu)造函數(shù)和析構(gòu)函數(shù) (續(xù) ) B(int i,int j,int k):A(i),b1(j),b2(k) {} void Print() { A::Print()。} B(int i) {b1=i。 }。} void Print() {couta, 。 include class A { public: A() {a=0。s destructor M39。s destructor M39。s constructor ,3 N39。s constructor ,6 N39。 ()。 } void main() { N n1(5,6,7), n2(2,3,4)。 } void N::Print() { M::Print()。 } N::~N() { C ++ 語 言 程 序 設(shè) 計(jì) 構(gòu)造函數(shù)和析構(gòu)函數(shù) (續(xù) ) coutN39。 M::M(int i,int j,int k):M(i,j),n(k) { coutN39。 private: int n。 ~N()。 } C ++ 語 言 程 序 設(shè) 計(jì) 構(gòu)造函數(shù)和析構(gòu)函數(shù) (續(xù) ) class N:public M { public: N() {n=0。s destructor called
點(diǎn)擊復(fù)制文檔內(nèi)容
規(guī)章制度相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1