



下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、第8章練習題同步練習1一個大的應(yīng)用程序,通常由多個類構(gòu)成,類與類之間互相協(xié)同工作, 它們之間有三種主要關(guān)系。下列不屬于類之間關(guān)系的是( )。(A)gets-a (B)has-a(C)uses-a (D)is-a2在C+中,類之間的繼承關(guān)系具有( )。(A)自反性(B)對稱性(C)傳遞性(D)反對稱性3下列關(guān)于類之間關(guān)系的描述,正確的是( )。(A)has-a表示一個類部分地使用另一個類(B)uses-a表示類的包含關(guān)系(C)is-a關(guān)系具有對稱性。(D)is-a機制稱為“繼承”4下列關(guān)于類的描述,正確的是( )。(A)父類具有子類的特征(B)一個類只能從一個類繼承(C)is-a關(guān)系具有傳遞性(
2、D)uses-a表示類的繼承機制5下列關(guān)于類的繼承描述中,正確的是( )。(A)派生類公有繼承基類時,可以訪問基類的所有數(shù)據(jù)成員,調(diào)用所有成員函數(shù)。(B)派生類也是基類,所以它們是等價的。(C)派生類對象不會建立基類的私有數(shù)據(jù)成員,所以不能訪問基類的私有數(shù)據(jù)成員。(D)一個基類可以有多個派生類,一個派生類可以有多個基類。【解答】ACDCD同步練習一、選擇題1當一個派生類公有繼承一個基類時,基類中的所有公有成員成為派生類的( )。(A)public成員(B)private成員(C)protected成員(D)友元2當一個派生類私有繼承一個基類時,基類中的所有公有成員和保護成員成為派生類的( )。
3、(A)public成員(B)private成員(C)protected成員(D)友元3當一個派生類保護繼承一個基類時,基類中的所有公有成員和保護成員成為派生類的( )。(A)public成員(B)private成員(C)protected成員(D)友元4不論派生類以何種方式繼承基類,都不能直接使用基類的( )。(A)public成員(B)private成員(C)protected成員(D)所有成員5在C+中,不加說明,則默認的繼承方式是( )。(A)public(B)private(C)protected(D)public或protected6某公有派生類的成員函數(shù)不能直接訪問基類中繼承來的某
4、個成員,則該成員一定是基類中的( )。(A)私有成員(B)公有成員(C)保護成員(D)保護成員或私有成員7下列關(guān)于類層次中重名成員的描述,錯誤的是( )。(A)C+允許派生類的成員與基類成員重名(B)在派生類中訪問重名成員時,屏蔽基類的同名成員(C)在派生類中不能訪問基類的同名成員(D)如果要在派生類中訪問基類的同名成員,可以顯式地使用作用域符指定8下列關(guān)于類層次中靜態(tài)成員的描述,正確的是( )。(A)在基類中定義的靜態(tài)成員,只能由基類的對象訪問(B)在基類中定義的靜態(tài)成員,在整個類體系中共享(C)在基類中定義的靜態(tài)成員,不管派生類以何種方式繼承,在類層次中具有相同的訪問性質(zhì)(D)一旦在基類中
5、定義了靜態(tài)成員,就不能在派生類中再定義【解答】ABCBBACB同步練習一、選擇題1在C+中,可以被派生類繼承的函數(shù)是( )。(A)成員函數(shù)(B)構(gòu)造函數(shù)(C)析構(gòu)函數(shù)(D)友元函數(shù)2下列關(guān)于派生類對象的初始化,敘述正確的是( )。(A)是由派生類的構(gòu)造函數(shù)實現(xiàn)的(B)是由基類的構(gòu)造函數(shù)實現(xiàn)的(C)是由基類和派生類的構(gòu)造函數(shù)實現(xiàn)的(D)是系統(tǒng)自動完成的,不需要程序設(shè)計者干預(yù)3在創(chuàng)建派生類對象時,構(gòu)造函數(shù)的執(zhí)行順序是( )。(A)對象成員構(gòu)造函數(shù)基類構(gòu)造函數(shù)派生類本身的構(gòu)造函數(shù)(B)派生類本身的構(gòu)造函數(shù)基類構(gòu)造函數(shù)對象成員構(gòu)造函數(shù)(C)基類構(gòu)造函數(shù)派生類本身的構(gòu)造函數(shù)對象成員構(gòu)造函數(shù)(D)基類構(gòu)造
6、函數(shù)對象成員構(gòu)造函數(shù)派生類本身的構(gòu)造函數(shù)4在具有繼承關(guān)系的類層次體系中,析構(gòu)函數(shù)執(zhí)行的順序是( )。(A)對象成員析構(gòu)函數(shù)基類析構(gòu)函數(shù)派生類本身的析構(gòu)函數(shù)(B)派生類本身的析構(gòu)函數(shù)對象成員析構(gòu)函數(shù)基類析構(gòu)函數(shù)(C)基類析構(gòu)函數(shù)派生類本身的析構(gòu)函數(shù)對象成員析構(gòu)函數(shù)(D)基類析構(gòu)函數(shù)對象成員析構(gòu)函數(shù)派生類本身的析構(gòu)函數(shù)5在創(chuàng)建派生類對象時,類層次中構(gòu)造函數(shù)的執(zhí)行順序是由( )。(A)派生類的參數(shù)初始式列表的順序決定的(B)系統(tǒng)規(guī)定的(C)是由類的書寫順序決定的(D)是任意的【解答】ACDBB同步練習一、選擇題1當不同的類具有相同的間接基類時,( )。(A)各派生類無法按繼承路線產(chǎn)生自己的基類版本(
7、B)為了建立唯一的間接基類版本,應(yīng)該聲明間接基類為虛基類(C)為了建立唯一的間接基類版本,應(yīng)該聲明派生類虛繼承基類(D)一旦聲明虛繼承,基類的性質(zhì)就改變了,不能再定義新的派生類2下列關(guān)于多繼承的描述,錯誤的是( )。(A)一個派生類對象可以擁有多個直接或間接基類的成員(B)在多繼承時不同的基類可以有同名成員(C)對于不同基類的同名成員,派生類對象訪問它們時不會出現(xiàn)二義性(D)對于不同基類的不同名成員,派生類對象訪問它們時不會出現(xiàn)二義性3下面關(guān)于基類和派生類的描述,正確的是( )。(A)一個類可以被多次說明為一個派生類的直接基類,可以不止一次地成為間接基類(B)一個類不能被多次說明為一個派生類的
8、直接基類,可以不止一次地成為間接基類(C)一個類不能被多次說明為一個派生類的直接基類,且只能成為一次間接基類(D)一個類可以被多次說明為一個派生類的直接基類,但只能成為一次間接基類4下列關(guān)于虛繼承的說明形式的描述,正確的是( )。(A)在派生類類名前添加關(guān)鍵字virtual(B)在基類類名前添加關(guān)鍵字virtual(C)在基類類名后添加關(guān)鍵字virtual(D)在派生類類名后,類繼承的關(guān)鍵字之前添加關(guān)鍵字virtual5設(shè)置虛基類的目的是( )。(A)簡化程序(B)消除二義性(C)提高運行效率(D)減少目標代碼【解答】CCBDB二、程序練習1閱讀程序,寫出運行結(jié)果。#include<io
9、stream>using namespace std;class A public : A(const char *s) cout << s << endl; A() ;class B : virtual public A public : B(const char *s1, const char *s2) : A( s1 ) cout << s2 << endl; ;class C : virtual public A public : C(const char *s1, const char *s2):A(s1) cout <&l
10、t; s2 << endl; ;class D : public B, public C public : D( const char *s1,const char *s2,const char *s3,const char *s4 ): B( s1, s2 ), C( s1, s3 ), A( s1 ) cout << s4 << endl; ;int main() D *ptr = new D( "class A", "class B", "class C", "class D&quo
11、t; ); delete ptr;【解答】綜合練習一、思考題1函數(shù)和類這兩種程序模塊都可以實現(xiàn)軟件重用,它們之間有什么區(qū)別【解答】函數(shù)是基于參數(shù)集的功能抽象模塊,以調(diào)用方式實現(xiàn)軟件重用,函數(shù)之間沒有邏輯關(guān)系。類是數(shù)據(jù)屬性與操作的封裝,以繼承方式實現(xiàn)軟件重用,類之間構(gòu)成有向無回圖的類格。2按照類成員的訪問特性、類層次的繼承特點,制作一張表格,總結(jié)各種類成員在基類、派生類中的可見性和作用域。【解答】 基類成員派生類繼承publicprotectedprivatepublic在派生類中訪問特性不變。派生類和類外均可見,有作用域。在派生類中訪問特性不變。類體系中可見?;愃接谐蓡T,僅在基類中可見。pr
12、otected成為派生類保護段成員。在整個類體系中可見。private成為派生類私有成員。僅在派生類和基類中可見。派生類不論以何種方式繼承基類,基類所有成員在整個類體系有作用域。3若有以下說明語句:class A private : int a1;public : int a2; double x; /*/ ;class B : private A private : int b1; public : int b2; double x; /*/ ;B b; 對象b將會生成什么數(shù)據(jù)成員與繼承關(guān)系、訪問特性、名字有關(guān)嗎【解答】對象b生成的數(shù)據(jù)成員有a1 a2 A:x b1 b2 B:x,共六個數(shù)據(jù)
13、成員。數(shù)據(jù)成員的建立和繼承關(guān)系、訪問特性、名字無關(guān)。7“虛基類”是通過什么方式定義的如果類A有派生類B、C,類A是類B虛基類,那么它也一定是類C的虛基類嗎為什么【解答】虛基類是在聲明派生類時,指定繼承方式時聲明的,聲明虛基類的一般形式為:class 派生類名 : virtual 繼承方式 基類名若類A是類B和類C的虛基類,但不一定是類C的虛基類,原因在于“虛基類”中的“虛”不是基類本身的性質(zhì)。而是派生類在繼承過程中的特性。關(guān)鍵字virtual只是說明該派生類把基類當作虛基類繼承,不能說明基類其他派生類繼承基類的方式8在具有虛繼承的類體系中,建立派生類對象時,以什么順序調(diào)用構(gòu)造函數(shù)請用簡單程序驗證你的分析?!窘獯稹吭诰哂刑摾^
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 臨聘人員2025年度勞動合同模板定制與解析
- 2025年度玉米種植基地建設(shè)與收購合作合同
- 二零二五年度農(nóng)業(yè)產(chǎn)業(yè)化擔保貸款合同
- 2025年度旅游企業(yè)競業(yè)禁止與市場信息保密協(xié)議
- 二零二五年度新型食品研發(fā)與供貨合作協(xié)議
- 二零二五年度食堂廢棄物分類回收利用合同協(xié)議
- 2025年阿里貨運員初級考試題庫
- 開業(yè)慶典發(fā)言稿
- 2025年銅川貨運上崗證考試題庫1387題
- 德育會議發(fā)言稿
- 第十四屆全國交通運輸行業(yè)職業(yè)技能競賽(公路收費及監(jiān)控員)賽項題庫-上(單選題匯總-共3部分-1)
- NBT 10664-2021 核電廠工程巖土試驗規(guī)程
- 中醫(yī)藥膳學(中篇-藥膳原料)共66張課件
- 醫(yī)院產(chǎn)前篩查中心設(shè)置評審驗收工作匯報課件
- 公司生產(chǎn)進度表
- 2019年遠程開具電子處方管理制度及操作規(guī)程版
- 倪海廈人紀之針灸 全
- 房室結(jié)雙徑路傳導的基本電生理特征與常見心電圖表現(xiàn)分析課件
- 《傳統(tǒng)功法-八段錦》教學大綱
- 溶血性貧血護理
- 逆向思維-PPT課件(PPT 43頁)
評論
0/150
提交評論