c++繼承與派生習題答案.doc

c++繼承與派生習題答案.doc

ID:52563625

大?。?5.50 KB

頁數(shù):12頁

時間:2020-03-28

c++繼承與派生習題答案.doc_第1頁
c++繼承與派生習題答案.doc_第2頁
c++繼承與派生習題答案.doc_第3頁
c++繼承與派生習題答案.doc_第4頁
c++繼承與派生習題答案.doc_第5頁
資源描述:

《c++繼承與派生習題答案.doc》由會員上傳分享,免費在線閱讀,更多相關內(nèi)容在行業(yè)資料-天天文庫。

1、1.概念填空題1.1在C++中,三種派生方式的說明符號為public、private、protected不加說明,則默認的派生方式為private。1.2當公有派生時,基類的公有成員成為派生類的公有成員;保護成員成為派生類的保護成員;私有成員成為派生類的不能直接訪問成員。當保護派生時,基類的公有成員成為派生類的保護成員;保護成員成為派生類的保護成員;私有成員成為派生類的不能直接訪問成員。1.3派生類的構(gòu)造函數(shù)一般有3項工作要完成:首先基類初始化,其次成員對象初始化,最后執(zhí)行派生類構(gòu)造函數(shù)體。1.4多繼承時,多個基類中的同名的成員在派生類中由于標識符

2、不唯一而出現(xiàn)二義性。在派生類中采用虛基類或作用域分辨符來消除該問題。2.簡答題2.1派生類如何實現(xiàn)對基類私有成員的訪問?2.2什么是類型兼容規(guī)則?2.3派生類的構(gòu)造函數(shù)是怎樣的執(zhí)行順序,析構(gòu)函數(shù)的執(zhí)行順序是如何實現(xiàn)的?2.4繼承與組合之間的區(qū)別與聯(lián)系是什么?2.5什么是虛基類?它有什么作用?含有虛基類的派生類的構(gòu)造函數(shù)有什么要求,什么是最遠派生類,建立一個含有虛基類的派生類的對象時,為什么由最遠派生類的構(gòu)造函數(shù)負責虛基類的初始化?3.選擇題3.1下面對派生類的描述中,錯誤的是(D)。A.一個派生類可以作為另外一個派生類的基類B.派生類至少有一個基類

3、C.派生類的成員除了它自己的成員外,還包含了它的基類的成員D.派生類中繼承的基類成員的訪問權限到派生類中保持不變3.2下列對友元關系敘述正確的是(A)。A.不能繼承B.是類與類的關系C.是一個類的成員函數(shù)與另一個類的關系D.提高程序的運行效率3.3當保護繼承時,基類的(B)在派生類中成為保護成員,不能通過派生類的對象來直接訪問。A.任何成員B.公有成員和保護成員C.公有成員和私有成員D.私有成員3.4設置虛基類的目的是(B)。A.簡化程序B.消除二義性C.提高運行效率D.減少目標代碼3.5在公有派生情況下,有關派生類對象和基類對象的關系,不正確的敘

4、述是(C)。A.派生類的對象可以賦給基類的對象B.派生類的對象可以初始化基類的引用C.派生類的對象可以直接訪問基類中的成員D.派生類的對象的地址可以賦給指向基類的指針3.6有如下類定義:classMyBASE{intk;public:voidset(intn){k=n;}intget()const{returnk;}};classMyDERIVED:protectedMyBASE{protected;intj;public:voidset(intm,intn){MyBASE::set(m);j=n;}intget()const{returnMyBA

5、SE::get()+j;}};則類MyDERIVED中保護成員個數(shù)是(B)。A.4B.3C.2D.13.7程序如下:#includeusingnamespacestd;classA{public:A(){cout<<”A”;}};classB{public:B(){cout<<”B”;}};classC:publicA{Bb;public:C(){cout<<”C”;}};intmain(){Cobj;return0;}執(zhí)行后的輸出結(jié)果是(D)。A.CBAB.BACC.ACBD.ABC3.8類O定義了私有函數(shù)F1。P和Q為O的派

6、生類,定義為classP:protectedO{…};classQ:publicO{…}。(C)可以訪問Fl。A.O的對象B.P類內(nèi)C.O類內(nèi)D.Q類內(nèi)3.9有如下類定義:classXA{intx;public:XA(intn){x=n;}};classXB:publicXA{inty;public:XB(inta,intb);};在構(gòu)造函數(shù)XB的下列定義中,正確的是(B)。A.XB::XB(inta,intb):x(a),y(b){}B.XB::XB(inta,intb):XA(a),y(b){}C.XB::XB(inta,intb):x(a),

7、XB(b){}D.XB::XB(inta,intb):XA(a),XB(b){}3.10有如下程序:#includeusingnamespacestd;classBase{private:voidfun1()const{cout<<”fun1”;}protected:voidfun2()const{cout<<”fun2”;}public:voidfun3()const{cout<<”fun3”;}};classDerived:protectedBase{public:voidfun4()const{cout<<”fun4”;}

8、};intmain(){Derivedobj;obj.fun1();//①obj.fun2();//②obj.fun3()

當前文檔最多預覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學公式或PPT動畫的文件,查看預覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權歸屬用戶,天天文庫負責整理代發(fā)布。如果您對本文檔版權有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。