面向?qū)ο蟪绦蛟O(shè)計復(fù)習(xí)試題(答案)_第1頁
面向?qū)ο蟪绦蛟O(shè)計復(fù)習(xí)試題(答案)_第2頁
面向?qū)ο蟪绦蛟O(shè)計復(fù)習(xí)試題(答案)_第3頁
面向?qū)ο蟪绦蛟O(shè)計復(fù)習(xí)試題(答案)_第4頁
面向?qū)ο蟪绦蛟O(shè)計復(fù)習(xí)試題(答案)_第5頁
已閱讀5頁,還剩30頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

語法擴充1.1選擇題在C++中用( D)能夠?qū)崿F(xiàn)將參數(shù)值帶回。a)數(shù)組b)指針c)引用d)上述ABC都可考慮函數(shù)原型voidtest(inta,intb=7,char*ch=”*"),下面得函數(shù)調(diào)用中,屬于不合法調(diào)用得就是:(C)A)test(5)B)test(5,8)C)test(6,"?!?D)test(0,0,"*”);已知:intm=10;下列表示引用得方法中,正確得就是:(C)A)int&Z;B)int&t=10;C)int&X=m;D)float&f=&m;下列不就是函數(shù)重載所要求得條件就是:(D)A)函數(shù)名相同B)參數(shù)個數(shù)不同C)參數(shù)類型不同D)函數(shù)返回值類型不同在C++中執(zhí)行以下4條語句后輸出rad值為:(C)staticinthot=200;nt&rad=hot;hot=hot+100;cout<<rad<<endl;A)0B)100C)300D)200系統(tǒng)在調(diào)用重載函數(shù)時,不能作為確定哪個重載函數(shù)被調(diào)用得依據(jù)就是:(D)A)參數(shù)個數(shù)B)參數(shù)類型C)函數(shù)名稱D)函數(shù)得返回值類型對C++語言與C語言得兼容性,描述正確得就是:(A)A)C++兼容CB)C++部分兼容CC)C++不兼容CD)C兼容C++在C++中使用流進行輸入輸出,其中用于屏幕輸出得對象就是:(C)A)cerrB)cinC)coutD)cfile對使用關(guān)鍵字new所開辟得動態(tài)存儲空間,釋放時必須使用(C)A)freeB)createC)deleteD)realse在函數(shù)調(diào)用時,如某一默認(rèn)參數(shù)要指明一個特定值,則有(A)A)其之前所有參數(shù)都必須賦值B)其之后所有參數(shù)都必須賦值C)其前、后所有參數(shù)都必須賦值D)其前、后所有參數(shù)都不必賦值下列哪個類型函數(shù)不適合聲明為內(nèi)聯(lián)函數(shù)(A)A)函數(shù)體語句較多B)函數(shù)體語句較少C)函數(shù)執(zhí)行時間較短D)函數(shù)執(zhí)行時間過長intFunc(int,int);不可與下列哪個函數(shù)構(gòu)成重載(B)A)intFunc(int,int,int);B)doubleFunc(int,int);C)doubleFunc(double,double);D)doubleFunc(int,double);下面得哪個保留字不能作為函數(shù)得返回類型(C)A)voidB)intC)newD)long一個函數(shù)功能不太復(fù)雜,但要求被頻繁調(diào)用,選用(A)、A。內(nèi)聯(lián)函數(shù)B、重載函數(shù)C.遞歸函數(shù)D。嵌套函數(shù)已知函數(shù)f得原型為:voidf(int&a,char*b);變量s,t得定義就是:ints;chart1、假定有如下定義:intx;,若要將整型變量就是_int&y=x;________。具有相同函數(shù)名但具有不同參數(shù)表得函數(shù)稱為[]="ABCD";把s與t分別作為第一參數(shù)與第二參數(shù)來調(diào)用函數(shù)f,正確得調(diào)用語句就是(C)Af(&s,&t);Bf(&s,t);Cf(s,t);Df(s,&t);若定義cin>〉str;當(dāng)輸入MicrosoftVisualStudio6、0!所得結(jié)果就是str=(B)、A、MicrosoftVisualStudio6。0!B、MicrosoftC、MicrosoftVisualD、MicrosoftVisualStudio6.0、函數(shù)模板(C)。A、代表某一具體函數(shù)B、與模板函數(shù)就是同一個函數(shù)C、與某一個具體得數(shù)據(jù)類型連用D、就是模板函數(shù)實例化得結(jié)果在C++中,關(guān)于下列設(shè)置參數(shù)默認(rèn)值得描述中,正確得就是(C)A、不允許設(shè)置參數(shù)得默認(rèn)值B、設(shè)置參數(shù)默認(rèn)值只能在定義函數(shù)時設(shè)置C、設(shè)置參數(shù)默認(rèn)值時,應(yīng)該就是先設(shè)置右邊得再設(shè)置左邊得D、設(shè)置參數(shù)默認(rèn)值時,應(yīng)該全部參數(shù)都設(shè)置下列表示引用得方法中,(A)就是正確得。已知:k=1000;A、int&x=k;B、char&y;C、int&z=1000;D、float&t=&k;有如下模板定義:template〈classT>Tfun(Tx,Ty){returnx*x+y*y;}在下列對fun得調(diào)用中,錯誤得就是:(C)A)fun(2,8)B)fun(2、0,8.2)C)fun(2、3,8)D)fun(‘2’,’8’)通常情況下,函數(shù)模板中得類型參數(shù)個數(shù)不能就是(A)A)0個B)1個C)2個D)3個1、2填空題y定義為變量 x得引用,則應(yīng)使用得定義語句重載函數(shù)。'2、在進行函數(shù)調(diào)用時 ,將把參數(shù)得值傳遞給值參數(shù) ,把參數(shù)得_地址_傳遞給引用參數(shù)。3、執(zhí)行完下列三條語句后 ,指針變量 c指向__b___。Inta,b,*c=&a;int*&p=c;p=&b;4、 假設(shè)有如下函數(shù)定義

:void

Fun(int

x,inty=100);則語旬Fu

n(5)語句

__ Fun(5,100)_等價。5、在一個C++程序中,每個變量都必須遵循_ _先定義后使用 __得原則、6、 下面就是一個求數(shù)組元素之與得程序。主程序中定義并初始化了一個數(shù)組數(shù)組各元素之與 ,并輸出結(jié)果。函數(shù)TotalSum計算數(shù)組元素之與。請完成下列程序、

,然后計算該include<iostream。h〉__intTotalsum(intarray[],intlen)__;voidmain(){nta[5]={2,3,6,8,10};__int Total___;Total=Totalsum(a,5);cout<〈"Sum ofarray:"〈〈Total〈<endl;}intTotalsum(intarray[],int

len

){____intfor(int

sum=0____;I=0;____I<len____

;I++)____sum+=array[I]_____;eturnsum;}7、 下面得函數(shù)F un未使用中間變量實現(xiàn)了對兩個數(shù)得交換 ,請完成下列函數(shù)得定義。Void Fun (int &x,int &y){x+=y(tǒng);y =___x—y____;__x= x—y_____;}8、定義一個函數(shù)時 ,若只允許函數(shù)體訪問形參得值而不允許修改它得值 ,則應(yīng)把該形參聲明為__常量__,即在該形參聲明得前面加上 __const__關(guān)鍵字進行修飾。9、 在一個函數(shù)得定義或聲明前加上關(guān)鍵字_ _inline__時,該函數(shù)就聲明為內(nèi)聯(lián)函數(shù)。1、3簡答題A、、內(nèi)聯(lián)函數(shù)得含義在函數(shù)前加上關(guān)鍵字 inline 說明了一個內(nèi)聯(lián)函數(shù) ,這使一個函數(shù)在程序行里進行代碼擴展而不被調(diào)用。這樣得好處就是減少了函數(shù)調(diào)用得開銷 ,產(chǎn)生較快得執(zhí)行速度、但就是由于重復(fù)編碼會產(chǎn)生較長代碼 ,所以內(nèi)聯(lián)函數(shù)通常都非常小、如果一個函數(shù)在類說明中定義 ,則將自動轉(zhuǎn)換成內(nèi)聯(lián)函數(shù)而無需用 inline說明。B、。函數(shù)重載得含義在同一作用域范圍內(nèi) ,相同得函數(shù)名通過不同得參數(shù)類型或參數(shù)個數(shù)可以定義幾個函數(shù)編譯時編譯器能夠識別實參得個數(shù)與類型來決定該調(diào)用哪個具體函數(shù)。需要注意得就是果兩個函數(shù)僅僅返回類型不同 ,則編譯時將會出錯 ,因為返回類型不足以提供足夠得信息以使編譯程序判斷該使用哪個函數(shù)。所以函數(shù)重載時必須就是參數(shù)類型或者數(shù)量不同。

,,如C、引用與指針得區(qū)別D、內(nèi)聯(lián)函數(shù)使用上得限制E、定義帶默認(rèn)參數(shù)值函數(shù)得規(guī)則F、指針與常量得關(guān)系1。4程序閱讀題1)寫出下列程序得運行結(jié)果、#include〈iostream.h〉voidmain(){?int x;int&p=x;x=10;p=x+10;cout<<x<<","<<p〈<endl;}結(jié)果:20,202)寫出下列程序得運行結(jié)果。#include<iostream、h>ntf(inta){?return ++a;}ntg(int&a){?return++a;}void main(){?intm=0,n=0;?m+=f(g(m));?n+=f(f(n));cout〈<"m="<<m<〈endl;?cout<<"n="<〈n〈〈endl;}結(jié)果:m=3n=23) 寫出下列程序得運行結(jié)果。#include<iostream、h>voidFun(){intnum=20;cout〈<”TheFun’snumis"〈<num<<endl;}voidmain(){?intnum=10;?cout<<"The

main's

num

is"<〈num〈〈endl;Fun();{intnum=30;??cout<〈"The Field'snumis ”<<num〈<endl;}cout<<"The main's num is"<〈num<<endl;}結(jié)果:The main'snum is10TheFun'snum is20TheField’snumis 30The main’snumis 10類與對象2。1選擇題下列得各類函數(shù)中 ,不就是類得成員函數(shù)。 ( C )A)構(gòu)造函數(shù) B)析構(gòu)函數(shù) C)友元函數(shù) D)拷貝初始化構(gòu)造函數(shù)作用域運算符“ ::”得功能就是:( B )A)標(biāo)識作用域得級別得B)指出作用域得范圍得C)給定作用域得大小得D)標(biāo)識成員就是屬于哪個類得已知:print()函數(shù)就是一個類得常成員函數(shù),它無返回值,下列表示中,就是正確得。(A)A)voidprint()const;B)constvoidprint();C)voidconstprint():D)voidprint(const);在類定義得外部,可以被訪問得成員有(C)A)所有類成員B)privat(yī)e得類成員C)public得類成員D)public或private得類成員關(guān)于類與對象不正確得說法就是:(C)A)類就是一種類型,它封裝了數(shù)據(jù)與操作B)對象就是類得實例C)一個類得對象只有一個D)一個對象必屬于某個類在C++中實現(xiàn)封裝就是借助于(B)A)枚舉B)類C)數(shù)組D)函數(shù)定義析構(gòu)函數(shù)時,應(yīng)該注意:(C)A)其名與類名完全相同B)返回類型就是void類型C)無形參,也不可重載D)函數(shù)體中必須有delete語句類claseCC1得說明如下,錯誤得語句就是:(A)claseCC1{inta=2;//(A)CC1();//(B)public:CC1(intval);//(C)~CC1();//(D)};類得指針成員得初始化就是通過函數(shù)完成得,這個函數(shù)通常就是:(B)A)析構(gòu)函數(shù)B)構(gòu)造函數(shù)C)其它成員函數(shù)D)友元函數(shù)關(guān)于構(gòu)造函數(shù)得說法,不正確得就是:(A)A)沒有定義構(gòu)造函數(shù)時,系統(tǒng)將不會調(diào)用它B)其名與類名完全相同C)它在對象被創(chuàng)建時由系統(tǒng)自動調(diào)用D)沒有返回值通??截悩?gòu)造函數(shù)得參數(shù)就是:(C)A)對象名B)對象得成員名C)對象得引用名D)對象得指針名關(guān)于成員函數(shù)特征得描述中,錯誤得就是:(A)A)成員函數(shù)一定就是內(nèi)聯(lián)函數(shù)B)成員函數(shù)可以重載C)成員函數(shù)可以設(shè)置參數(shù)得默認(rèn)值D)成員函數(shù)可以就是靜態(tài)得下列關(guān)于構(gòu)造函數(shù)得描述中,錯誤得就是:(D)A)構(gòu)造函數(shù)可以設(shè)置默認(rèn)參數(shù);B)構(gòu)造函數(shù)在定義類對象時自動執(zhí)行C)構(gòu)造函數(shù)可以就是內(nèi)聯(lián)函數(shù);D)構(gòu)造函數(shù)不可以重載有如下類聲明“classA{intx;??};",則A類得成員x就是:(B)A)公有數(shù)據(jù)成員B)私有數(shù)據(jù)成員C)公有成員函數(shù)D)私有成員函數(shù)類TM與類TN就是兩個獨立得類,那么類TM中哪種形式得數(shù)據(jù)成員一定就是不允許得:(C)A)TM*aB)TN&aC)TMaD)TNa;以下關(guān)于this指針得敘述中正確得就是:(D)A)任何與類相關(guān)得函數(shù)都有this指針;B)類得成員函數(shù)都有this指針;C)類得友員函數(shù)都有this指針;D)類得非靜態(tài)成員函數(shù)才有this指針;.關(guān)于類模板得說法正確得就是:(B)A)類模板得主要作用就是生成抽象類B)類模板實例化時,編譯器將根據(jù)給出得模板實參生成一個類C)在類模板中得數(shù)據(jù)成員具有同樣類型D)類模板中得成員函數(shù)沒有返回值。以下關(guān)鍵字不能用來聲明類得訪問權(quán)限得就是:(C)A)publicB)privateC)staticD)protected.類得私有成員可在何處訪問(D)A)通過子類得對象訪問 B)本類及子類得成員函數(shù)中C)通過該類對象訪問 D)本類得成員函數(shù)中.如果沒有為一個類定義任何構(gòu)造函數(shù)得情況下 ,下列描述正確得就是:(A)A)編譯器總就是自動創(chuàng)建一個不帶參數(shù)得構(gòu)造函數(shù) B)這個類沒有構(gòu)造函數(shù)C)這個類不需要構(gòu)造函數(shù) D) 該類不能通過編譯.一個類可包含析構(gòu)函數(shù)得個數(shù)就是

:(

B)A)0

B)1

C)0

個或

1個

D)0

個或多個。一個類可包含構(gòu)造函數(shù)得個數(shù)就是 :( D )A)0個

B)0

個或

1個

C)0

個或多個

D)1

個或多個.t

his

指針存在得目得就是

:(

)保證基類公有成員在子類中可以被訪問保證每個對象擁有自己得數(shù)據(jù)成員,但共享處理這些數(shù)據(jù)成員得代碼C)保證基類保護成員在子類中可以被訪問D)保證基類私有成員在子類中可以被訪問.下列關(guān)于類得權(quán)限得描述錯誤得就是 :( A)類本身得成員函數(shù)只能訪問自身得私有成員類得對象只能訪問該類得公有成員)普通函數(shù)不能直接訪問類得公有成員,必須通過對象訪問D)一個類可以將另一個類得對象作為成員、設(shè)類A將其它類對象作為成員,則建立A類對象時,下列描述正確得就是:(B)A)A類構(gòu)造函數(shù)先執(zhí)行B)成員構(gòu)造函數(shù)先執(zhí)行C)兩者并行執(zhí)行D)不能確定。假定有類AB,有相應(yīng)得構(gòu)造函數(shù)定義,能正確執(zhí)行“ABa(4),b(5),c[3],p[2]={&a,&b};”語句,請問執(zhí)行完此語句后共調(diào)用該類構(gòu)造函數(shù)得次數(shù)為(C)A)3B)4C)5D)6拷貝構(gòu)造函數(shù)得作用就是(C)、A。進行數(shù)據(jù)類型得轉(zhuǎn)換B。用對象調(diào)用成員函數(shù)C、用對象初始化對象D。用一般類型得數(shù)據(jù)初始化對象下列靜態(tài)數(shù)據(jù)成員得特性中,錯誤得就是(D)。A.靜態(tài)數(shù)據(jù)成員得聲明以關(guān)鍵字static開頭B、靜態(tài)數(shù)據(jù)成員必須在文件作用域內(nèi)初始化C.引導(dǎo)數(shù)據(jù)成員時,要在靜態(tài)數(shù)據(jù)成員前加(類名)與作用域運算符D、靜態(tài)數(shù)據(jù)成員不就是類所有對象共享得通過指針訪問類對象成員得方法就是 (D)。A。:: B。 ; C.、 D、—〉靜態(tài)成員函數(shù)沒有 (B )。A。返回值 B.this指針 C。 指針參數(shù) D。 返回類型在下列關(guān)鍵字中 ,用于說明類中公有成員得就是 (A)。A、public; B.private; C.protected; D、friend不就是構(gòu)造函數(shù)得特征 (D )。。構(gòu)造函數(shù)得函數(shù)名與類名相同C。構(gòu)造函數(shù)可以設(shè)置缺省參數(shù)就是析構(gòu)函數(shù)得特征(A)。

; B。 構(gòu)造函數(shù)可以重載 ;; D。 構(gòu)造函數(shù)必須指定類型說明。A.一個類中只能定義一個析構(gòu)函數(shù);B、析構(gòu)函數(shù)名與類名不同;C。析構(gòu)函數(shù)得定義只能在類體內(nèi);D.析構(gòu)函數(shù)可以有一個或多個參數(shù)。關(guān)于成員函數(shù)特征得下述描述中,(A)就是錯誤得。A.成員函數(shù)一定就是內(nèi)聯(lián)函數(shù);B、成員函數(shù)可以重載;C.成員函數(shù)可以設(shè)置參數(shù)得缺省值;D、成員函數(shù)可以就是靜態(tài)得。下述靜態(tài)數(shù)據(jù)成員得特性中,(D)就是錯誤得。A.說明靜態(tài)數(shù)據(jù)成員時前邊要加修飾符static;B、靜態(tài)數(shù)據(jù)成員要在類體外進行初始化;C、引用靜態(tài)數(shù)據(jù)成員時,要在靜態(tài)數(shù)據(jù)成員名前加<類名>與作用域運算符;D.靜態(tài)數(shù)據(jù)成員不就是所有對象所共用得。2。2填空題1、在撤銷類得對象時 ,C++程序?qū)⒆詣诱{(diào)用該對象得_ _析構(gòu)___函數(shù)。2、 類中得構(gòu)造函數(shù)就是一個特殊得成員函數(shù) ,它由類得對象 __自動_調(diào)用,它得作用就是___為對象分配內(nèi)存 ,數(shù)據(jù)成員初始化 ___、3、對類中得成員函數(shù)與屬性得訪問就是通過 __public__、_ _protected__與___private__這3個關(guān)鍵字來控制得。4、__delete__運算符刪除 new運算符所動態(tài)分配得內(nèi)存空間。5、假定用戶沒有給一個名為M yClass得類定義析構(gòu)函數(shù) ,則系統(tǒng)為其定義得默認(rèn)析構(gòu)函數(shù)形式為__MyClass()__。6、類中構(gòu)造函數(shù)有 __一個或多__個,析構(gòu)函數(shù)有_ __一___個。7、類就是對具有共同屬性與行為得一類事物得抽象描述 ,共同屬性被描述為類中得_ __數(shù)據(jù)成員___,共同行為被描述為類中得 __成員函數(shù)__。8、若要把類 FriendClass定義為類 MyClass得友元類,則應(yīng)在類 MyClass得定義中加入語句_friend classFriendClass;___、9、在結(jié)構(gòu)定義中 ,數(shù)據(jù)與成員函數(shù)默認(rèn)權(quán)限就是 __public__。在類定義中,數(shù)據(jù)與成員函數(shù)默認(rèn)權(quán)限就是_ _private___、10、在下面程序得橫線處填上適當(dāng)?shù)谜Z句 ,使類型該程序執(zhí)行結(jié)果為 10。include<iostream。h>class MyClass{pub1ic:___MyClass (int a ){_x=a;}____//為x置值__int GetNum(){ returnx;}______ //?。祊rivate:intx;;void main(){Myclassmy(10);Cout<<my、GetNum()〈<end;}11、 完成下面得類定義、Class MyClass{public:MyClass(){x=0;}____friend___ ___intGetNum(___MyClass______my);private:intx;};int GetNum(____MyClass______my){___return my、x;}12、 __new__運算符對指定類型對象動態(tài)分配內(nèi)存并返回該類型得__指針 __。13、若要把函數(shù) voidFriendFunction()定義為類 MyClass得友元函數(shù),則應(yīng)在類yClass得定義中加入語句__friendvoidFriendFunction();_______。14、類得具體表現(xiàn)就是通過定義 _對象__來操作得。15、在定義類得對象時 ,C++程序?qū)⒆詣诱{(diào)用該對象得_ _構(gòu)造___函數(shù)初始化對象自身。16、一般情況下,按照面向?qū)ο蟮靡?把類中得數(shù)據(jù)成員(屬性)定義為__private__權(quán)限,而把成員函數(shù)(方法)定義為__public__權(quán)限。17、在類中定義與實現(xiàn)得函數(shù)稱為 _內(nèi)聯(lián)函數(shù)__。18、 非成員函數(shù)應(yīng)聲明為類得 __友元函數(shù)__才能訪問這個類得p rivat(yī)e成員。2.3簡答題、類得含義B、構(gòu)造函數(shù)得特點C、拷貝構(gòu)造函數(shù)得調(diào)用D、析構(gòu)函數(shù)得定義及其特點E、靜態(tài)成員得分類及各自得特點2。4程序閱讀題1) 寫出下列程序得運行結(jié)果。#include<iostream。h>classMyClass{harch;public:MyClass();MyClass(charcharacter);voidPrint();?~MyClass();};MyClass::MyClass(){cout<〈"

This

isa

constructor!"<<endl;ch=’a’;}MyClass::MyClass(charcharacter){cout<<"This

is

aconstructor!”<<end

l;?ch=character;}voi

d

MyClass::Print(){?cout<〈”The

value

of

chis”〈<ch<<endl;}MyClass::~MyClass(){cout〈〈"This isadestructor!"<〈endl;}voidmain(){?MyClassfirst,second('b');first、Print();second。Print();}運行結(jié)果:Thisisaconstructor!hisisaconstructor!hevalueofchisbThisisa destructor!Thisisadestructor!2)寫出下列程序得運行結(jié)果#include〈iostream。h>classMyClass{public:MyClass();voidPrint();~MyClass();private:int I;staticintj;;ntMyClass::j=0;yClass::MyClass(){cout〈<”Thisis constructor!"〈<endl;j+=10;}void MyClass::Print(){cout<〈"Thevalueof j is" 〈<J〈〈endl;}MyClass::~MyClass(){cout<〈"Thisisadestructor!"〈<endl;}oidmain(){MyClassfirst,second;irst、Print();second、Print();}Thisisconstructor!Thisisconstructor!Thevalue of jis20Thevalueofjis20This isa destructor!Thisis adestructor!繼承與派生3。1選擇題.在C++中,類與類之間得繼承關(guān)系具有 ( C )A)自反性 B) 對稱性 C) 傳遞性 D)反對稱性。在公有繼承得情況下,基類得成員(私有得除外)在派生類中得訪問權(quán)限( B)A)受限制 B)保持不變 C)受保護 D)不受保護。按解釋中得要求在下列程序劃線處填入得正確語句就是 :(C )#include<iostream.h >lassBase{public:voidfun(){cou t<〈"Base::f un"〈〈endl;};classDerived:public Base{public:void

fun(){ //在此空格處調(diào)用基類得函數(shù)

fun()cout〈<"Derived::fun"<〈endl;}};A)fun(); B)Base、fun(); C)Base::fun(); D)Base—〉fun();.在保護繼承得情況下,基類得成員(私有得除外)在派生類中得訪問權(quán)限( C)A)受限制 B)保持不變 C)受保護 D)不受保護、下面描述中,表達錯誤得就是:(B )A)公有繼承時,基類中得public成員在派生類中仍就是 public得公有繼承時,基類中得private成員在派生類中仍就是private得C)公有繼承時,基類中得protected成員在派生類中仍就是p rotected得D)私有繼承時,基類中得public 成員在派生類中就是 privat e得.下列虛基類得聲明中,正確得就是:(B)A)classvirtual B:public A B)cl ass B:vi rtual pubicAC)class B:publicA virtual D)virtualclass B:public A、C++設(shè)置虛基類得目得就是(A)A)消除二義性 B)簡化程序 C)提高運行效率 D)減少目標(biāo)代碼class X{inta;public:X(int x=0){a=x;}};class Y:publicX{int b;ublic:Y(int x=0,inty=0):X(y)){ b=x;}};下列語句組中出現(xiàn)語法錯誤得就是 (D)X*pa=newY(1,2);B。X a1=Y(1,3);C。Y b1(2,3);X&a3=b1;D、X a4(10);Yb2=a4;classBasepublic:inti;Base(int t) : i ( t ) { };class

Derived:protectedBase{

Base

b;intj;public:Derived (int t);};在構(gòu)造函數(shù)Derived得下列定義中,正確得就是(B)A。Derived::Derived(intt):b(t),j(t){}B。Derived::Derived(intt):b(t),Base(t),j(t){}C。Derived::Derived(intt):Base(t),j(t){}D。Derived::Derived(intt):i(t),b(t),j(t){}。在哪種派生方式中,派生類可以訪問基類中得protected成員(B)A)public與privateB)public、protected與privateC)protected與privateD)僅protected在C++中,類與類之間得繼承關(guān)系具有(C)A)自反性B)對稱性C)傳遞性反對稱性下列關(guān)于類得繼承描述中 ,(A )就是錯誤得A)派生類可以訪問基類得所有數(shù)據(jù)成員 ,也能調(diào)用基類得所有成員函數(shù)派生類也就是基類,但基類不一定具有派生類得全部屬性與方法繼承描述類得層次關(guān)系,派生類可以具有與基類相同得屬性與方法一個基類可以有多個派生類,一個派生類可以有多個基類.當(dāng)一個派生類僅有protected繼承一個基類時,基類中得所有公有成員成為派生類得(C)A)public成員B)private成員C)protected成員D)友元當(dāng)一個派生類私有繼承一個基類時,基類中得所有公有成員與保護成員成為派生類得(B)A)public成員B)private成員C)protected成員D)友元不論派生類以何種方法繼承基類,都不能使用基類得(B)A)public成員B)private成員C)protected成員D)public成員與protected成員在創(chuàng)建派生類對象時,構(gòu)造函數(shù)得執(zhí)行順序就是(D)對象成員構(gòu)造函數(shù)、基類構(gòu)造函數(shù)、派生類本身得構(gòu)造函數(shù)派生類本身得構(gòu)造函數(shù)、基類構(gòu)造函數(shù)、對象成員構(gòu)造函數(shù)基類構(gòu)造函數(shù)、派生類本身得構(gòu)造函數(shù)、對象成員構(gòu)造函數(shù)基類構(gòu)造函數(shù)、對象成員構(gòu)造函數(shù)、派生類本身得構(gòu)造函數(shù)下列虛基類得聲明中,正確得就是(D)。)classvirtualB:publicAB)virtualclassB:publicAC)classB:publicAvirtualD)class B:virtualpublicA下面敘述錯誤得就是 (A )、A)基類得protected成員在派生類中仍然就是 protected得基類得protected成員在public派生類中仍然就是protected得C)基類得protected成員在privat(yī)e派生類中就是 private得基類得protected成員不能被派生類得對象訪問下列說法中錯誤得就是(A)。A) 保護繼承時基類中得 public成員在派生類中仍就是

public得B)公有繼承時基類中得C)私有繼承時基類中得

private成員在派生類中仍就是 private得public成員在派生類中就是p rivat(yī)e得D)保護繼承時基類中得 public成員在派生類中就是 protected得關(guān)于多繼承二義性得描述中 ,錯誤得就是(B)。A)一個派生類得兩個基類中都有某個同名成員 ,在派生類中對這個成員得訪問可能出現(xiàn)二義性解決二義性得最常用得方法就是對成員名得限定法C)基類與派生類中同時出現(xiàn)得同名函數(shù) ,也存在二義性問題D)一個派生類就是從兩個基類派生出來得 ,而這兩個基類又有一個共同得基類 ,對該基類成員進行訪問時,可能出現(xiàn)二義性下面敘述錯誤得就是 (C )。)派生類可以使用private派生)對基類成員得訪問必須就是無二義性得C)基類成員得訪問能力在派生類中維持不變賦值兼容規(guī)則也適用于多繼承得組合派生類得構(gòu)造函數(shù)得成員初始化列表中,不能包含(C)。A)基類得構(gòu)造函數(shù)派生類中子對象得初始化派生類中一般數(shù)據(jù)成員得初始化下面(B)得敘述不符合賦值兼容規(guī)則。)派生類得對象可以賦值給基類得對象基類得對象可以賦值給派生類得對象C)派生類得對象可以初始化基類得引用D)派生類得對象得地址可以賦值給指向基類得指針.下列虛基類得聲明中,正確得就是:(B)A)classvirtual

B:public

A

B)classB:virtua

lpublicAC)classB:

public

Avirtual

D)virtualclass B:public

A.C++設(shè)置虛基類得目得就是

(

A)A)消除二義性

B)簡化程序

C)提高運行效率

D)減少目標(biāo)代碼3.2填空題1、垂直訪問時,保護成員得訪問控制權(quán)限與 _公有__成員相同。2、 利用繼承能夠?qū)崿F(xiàn) _代碼復(fù)用__。這種實現(xiàn)縮短了程序得開發(fā)時間

,促使開發(fā)人員復(fù)用已經(jīng)測試與調(diào)試好得高質(zhì)量軟件。3、派生類對基類得繼承有三種方式

:__public__、___protecte

d__

與___private__。4、多繼承情況下

,派生類得構(gòu)造函數(shù)得執(zhí)行順序取決于

__定義__派生類時所指定得各基類得順序。5、 C++提供得_多繼承

__機制允許一個派生類繼承多個基類

,即使這些基類就是相互無關(guān)得。6、派生類可以調(diào)用其_定義___中不具備得數(shù)據(jù)與操作。7、對基類數(shù)據(jù)成員得初始化必須在派生類構(gòu)造函數(shù)中得__初始化列表___處執(zhí)行。8、如果類Alpha繼承了類Beta,則類Alpha稱為__派生__類,類Beta稱為__基__類。9、 己知下面得程序框架 ,按注釋中得提示補充細節(jié)。include<iostream、h>classplanet{protected:doubledistance;___//行星距太陽得距離intrevolve;___//行星得公轉(zhuǎn)周期ublic:planet(doubled,intr){distance=d;revolve=r;}};classearth:public planet{doublecircumference;//地球繞太陽公轉(zhuǎn)得軌道周長public://定義構(gòu)造函數(shù) earth(doubled,intr),并計算地球繞太陽公轉(zhuǎn)得軌道周長、//假定:circumnference=2*d*3。1416___earth(doubled,intr):planet(d,r){__circumnference=2*d*3。1416;}___//定義show()函數(shù)顯示所有信息___voidshow(){cout<〈"distanceis”<〈distance<〈”miles,revolveis”<<revolve<〈"days"<<endl;cou<<”circumferenceis“〈<circumference<<endl;

}___};voidmain(){earth

ob(9300000,365);ob。show();}10、設(shè)置虛基類得目得就是__為了消除二義性11、若多繼承時,多個基類中擁有一個同名得成員

__,可通過____virtual_____標(biāo)識虛基類。,則__不能__用調(diào)整訪問權(quán)限確定對該成員得訪問、12、 根據(jù)基類得定義與測試程序 ,完成下面派生類得定義。ClassPoint{public:Point(intI=

0,int

j=0){X=I;Y=

j;}voidMove(intxOff,intyOff){X+=xOff;Y+=yOff;}int GetX(){return X;}ntGetY(){returnY;}rivate:ntX,Y;};classRectangle:privat(yī)ePoint{public:Rectangle(intx,inty,intw,inth)__:Point(x,y)___{_W=w;H=h;_}voidMove(intxOff,intyOff){_Point:Move(xOff,yOff);__}intGetX(){__returnPoint:GetX();__}intGetY(){___returnPoint:GetY();__}intGetW(){__returnW;__}intGetH(){__returnH;__}private:intW,H;}include<iostream。h>#include<math、h〉oidmain(){Rectanglerect(1,2,3,4);ect.Move(5,6);cout〈<“Thedataofrect(X,Y,W,H):( “<〈rect、GetX()〈〈“,<”<rect。GetY()〈<“,”<rect、GetW()〈<“,〈”〈rect。GetH()<<“)”<<endl;13、 多繼承可以視為就是 __單繼承__得擴展。14、在劃線處填上適當(dāng)?shù)谜Z句 ,完成下列程序、#include<mat(yī)h、h>classPoint{ublic:point(doublea,doubleb,doublec){_X =a;Y=b; Z =c;__}oubleGetx(){returnX;}doubleGety(){return Y;}oubleGetz(){returnZ;}privat(yī)e:__doubleX, Y;_____protected:__doubleZ;_____;class Line:_____public____Point{ublic:Line(double a,doubleb,doublec,doubled)_:Point(a,b,c)_____{____K =d;___}voidshow(){out<<Getx()<<endl;cout<<Gety()〈〈““<<〈〈.〈endl;out<<Getz()〈〈““<<Z<<endl;cout〈〈K〈<endl;}private:doublek;;void main(){Lineobj(1。2,3、4,5。6,7。8);obj、show();}15、類繼承中,缺省得繼承方式就是 __private___。16、當(dāng)用protected繼承從基類派生→個類時,基類得public成員成為派生類得__protected__成員,protected成員成為派生類得_____protected____成員、18、__公有派生__類得對象可作為____基___類得對象處理。19、指向基類得對象得指針變量也可以指向__公有派生類_得對象。20、類之間得”有”關(guān)系代表__組合___,”就是"關(guān)系代表__繼承__。3.3簡答題A、派生類得定義及其特點B、單繼承與多繼承得概念及其關(guān)系C、繼承方式得種類及其各自得特點D、在繼承中構(gòu)造函數(shù)與析構(gòu)函數(shù)得調(diào)用規(guī)則F、賦值兼容原則G、類模板與模板類得含義及其關(guān)系3.4讀程序題1、 寫出下列程序得運行結(jié)果、#include〈iostream。h〉lassBase{public:void Who(){cout〈〈"classBase"〈<endl;};classDerived1:public Base{public:voidWho(){cout〈<”class Derived1"<<endl;}};class

Derived2:publ

icBase{public:voidWho(){cout<〈"classDerived2<<”endl;};voidmain(){Baseobj1,*p;Derived1 obj2;?Derived2obj3;?p=&obj1;?p->W(wǎng)ho();p=&obj2;p—〉Who();p=&obj3;p-〉Who();obj2。Who();?obj3.Who();}答案:class BaselassBaseclassBaseclass Derived1lassDerived22、寫出下列程序得運行結(jié)果。#include <iostream、h〉classinstrument{public:?void

display()

const{c

out<〈”instument::display、"〈<

endl;}};classpiano:publicinstrument{public:?voiddisplay() const{cout〈〈"piano::display、"<<endl;}};classguitar:public

instrument{public:?void

display()

const{cout<〈”guitar::display。"<〈endl;};voidtone(instrument&I){I、display();;void main(){guitar guitar1;tone(guitar1);piano piano1;tone(piano1);}答案instument::display.instument::display、3、 寫出下列程序得運行結(jié)果、include<iostream.h>class A{ublic:?A(chari){cout<<"A's cons、”〈<i<〈endl;}?~A(){cout<<”A’sdes。”<<endl;}};classB:virtualpublic

A{public:?B(chari,charj):A(i){b=j;cout〈〈”B’scons、"<<j〈〈endl;}?~B(){cout<<"B’sdes。"〈<b<<endl;}private:char b;};classC:virtualpublicA{public:?C(chari,char j):A(i)?{cout〈<"C’scons?!?lt;<j〈<endl;}~C(){cout〈〈”C'sdes、"<〈endl;}};class D:public B,publicC{public:?D(chari,char j,char k,chars,charm,char n):C(k,s),B(i,j),A(i),aa(m){cout〈〈"D'scons."<〈endl;}?~D(){cout<<"D’sdes.”<<endl;}privat(yī)e:?Aaa;};voidmain(){obj('a’,'’b,’c','d'e’f,’');}答案 :A'scons。aB'scons.bC’scons、dA’scons.eD'scons、D’sdes。A’sdes.C'sdes。B'sdes、A's des。類得多態(tài)性4、1選擇題。實現(xiàn)運行時得多態(tài)性采用

(

D)A)重載函數(shù)

B)構(gòu)造函數(shù)

C)析構(gòu)函數(shù)

D)虛函數(shù)、在派生類中重新定義虛函數(shù)時

,必須在下列哪方面與基類保持一致、

(A

)A)參數(shù)類型

B)參數(shù)名字

C)操作內(nèi)容

D)賦值、當(dāng)一個類得某個函數(shù)被說明為 virtua l時,在該類得所有派生類中得同原型函數(shù)(A)A)都就是虛函數(shù) B)只有被重新說明時才就是虛函數(shù)C)都不就是虛函數(shù) D)只有被重新說明為 virtual時才就是虛函數(shù)。通過下述哪一項調(diào)用虛函數(shù)時 ,采用動態(tài)聯(lián)編。(A)A)對象指針B)對象名C)成員名限定D)派生類名下面描述中,正確得就是(BD)(兩個答案)A)虛函數(shù)就是沒有實現(xiàn)得函數(shù)B)純虛函數(shù)得實現(xiàn)在派生類中C)抽象類就是沒有純虛函數(shù)得類D)抽象類指針可以指向不同得派生類對象若一個類中含有純虛函數(shù),則該類稱為(D)A)基類B)純基類C)派生類D)抽象類假設(shè)A為抽象類,下列聲明(B)就是正確得A)Afun(int);B)A*p;C)intfun(A);D)AObj;在C++中,要實現(xiàn)動態(tài)聯(lián)編,必須使用(D)調(diào)用虛函數(shù)A)類名B)派生類指針C)對象名D)基類指針下列函數(shù)中,可以作為虛函數(shù)得就是(CD)(兩個答案)A)普通函數(shù)B)構(gòu)造函數(shù)C)成員函數(shù)D)析構(gòu)函數(shù)在派生類中,重載一個虛函數(shù)時,要求函數(shù)名、參數(shù)得個數(shù)、參數(shù)得類型、參數(shù)得順序與函數(shù)得返回值(B)A)不同B)相同C)相容D)部分相同下面函數(shù)原型聲明中,(C)聲明了fun為普通虛函數(shù)A)voidfun()=0;B)virtualvoidfun()=0;C)virtualvoidfun();D)virtualvoidfun(){};在下面四個選項中,(A)就是用來聲明虛函數(shù)得。virtualB)publicC)usingD)false在下面程序中,A、B、C、D四句編譯時出現(xiàn)錯誤得就是 (C)。ClassA______//A{public:______//BA(){func();}___//Cvirtual voidfunc()=0;___//D;實現(xiàn)運行時得多態(tài)性要使用 (D)。重載函數(shù)構(gòu)造函數(shù)虛函數(shù)對虛函數(shù)得調(diào)用(D)、一定使用動態(tài)聯(lián)編必須使用動態(tài)聯(lián)編C)一定使用靜態(tài)聯(lián)編不一定使用動態(tài)聯(lián)編在派生類中重新定義虛函數(shù)時,除了(D)方面,其她方面都必須與基類中相應(yīng)得虛函數(shù)保持一致。參數(shù)個數(shù)參數(shù)類型函數(shù)體關(guān)于虛函數(shù)得描述中 ,正確得就是(D)。虛函數(shù)就是一個靜態(tài)成員函數(shù)B)虛函數(shù)就是一個非成員函數(shù)C)虛函數(shù)既可以在函數(shù)說明時定義 ,也可以在函數(shù)實現(xiàn)時定義派生類得虛函數(shù)與基類中對應(yīng)得虛函數(shù)具有相同得參數(shù)個數(shù)與類型下列描述中,(D)就是抽象類得特性、可以說明虛函數(shù)可以進行構(gòu)造函數(shù)重載可以定義友元函數(shù)不能說明其對象關(guān)于純虛函數(shù)與抽象類得描述中 ,錯誤得就是(C )、A) 純虛函數(shù)就是一種特殊得虛函數(shù) ,它沒有具體得實現(xiàn))抽象類就是指具有純虛函數(shù)得類一個基類中說明有純虛函數(shù),該基類得派生類一定不再就是抽象類抽象類只能作為基類來使用,其純虛函數(shù)得實現(xiàn)由派生類給出以下(C)成員函數(shù)表示純虛函數(shù)。A)virtualint vf(int);B)voidvf(int)=0;C)virtualvoidvf()=0;D)virtual voidvf(int){}下列關(guān)于動態(tài)聯(lián)編得描述中 ,錯誤得就是(D)、A)動態(tài)聯(lián)編就是以虛函數(shù)為基礎(chǔ)得動態(tài)聯(lián)編就是在運行時確定所調(diào)用得函數(shù)代碼得動態(tài)聯(lián)編就是在編譯時確定操作函數(shù)得如果一個類至少有一個純虛函數(shù),那么就稱該類為(A)、抽象類虛基類派生類以上都不對下面得描述中,正確得就是(A)、A)virtual可以用來聲明虛函數(shù)B)含有純虛函數(shù)得類就是不可以用來創(chuàng)建對象得,因為它就是虛基類C)即使基類得構(gòu)造函數(shù)沒有參數(shù),派生類也必須顯示調(diào)用其構(gòu)造函數(shù)靜態(tài)數(shù)據(jù)成員可以通過成員初始化列表來初始化2填空題1、在析構(gòu)函數(shù)中調(diào)用虛函數(shù)時 ,采用__靜態(tài)__聯(lián)編。2、動態(tài)聯(lián)編就是在 __虛函數(shù)___得支持下實現(xiàn)得 ,它通過_作。3、動態(tài)聯(lián)編中直到_ _程序運行__時才能確定調(diào)用哪個函數(shù)

_指針或引用__來調(diào)用該函數(shù)操:而靜態(tài)聯(lián)編則就是在_ _程序編譯__時進行得。4、 C++中__不支持

__虛構(gòu)造函數(shù)

,但___支持_

__虛析構(gòu)函數(shù)。5、 靜態(tài)聯(lián)編所支持得多態(tài)性稱為 __編譯時__多態(tài)性運行時___多態(tài)性,動態(tài)多態(tài)性由 ___虛函數(shù)___來支持、

,動態(tài)聯(lián)編所支持得多態(tài)性則稱為

___6、在類定義中,將___=0__置于虛函數(shù)得函數(shù)原型得末尾可以將該函數(shù)聲明為純虛函數(shù)。7、 下列程序得運行結(jié)果如下 :Base’scons。Derived’socns、Derived'sdes。Base’sdes、根據(jù)結(jié)果將程序補充完整。#incude<iostream、h>lassBase{public:ase(){cout〈〈”Base’scons.”〈<endl;}__virtual~Base()__{cout<<"Base'sdes."<endl;}};classDerived:publicBase{public:Derived(){cout〈<”Derived'scons?!薄?lt;endl;}~Derived(){cout〈<”Derived'sdes.〈”<endl;};voidmain(){Base*Ptr=__new _Derived()_deleteptr;}8、抽象類不能__定義對象,但可以_聲明指針或引用__作為參數(shù)類型,函數(shù)返回類型或顯式轉(zhuǎn)換類型、9、根據(jù)不同得輸出結(jié)果 ,在函數(shù)Tone中填入正確得語句、#include <iostream。h>class Instrument{public:virtualvoidPrint() const{cout<〈”Instrument:Print"<<endl;}};classPiano:public Instument{public:void

Print()

const{cout<<"Piano::Print<〈endl;}};class Guitar:publicInstruIment{pub1ic:voidPrint()const{cout<<"Guiur::Print”<<endl;};void Tone(__Instrument obj__)//第二個要求改成 Instrument &obj{__obj.print();__}oidmain(){Guitarg;Tone(g);ianop;Tone(p);}輸出結(jié)果為:Instrument::PrintInstrument::Print輸出結(jié)果為:Guitar::PrintPiano::Print10、對虛函數(shù)使用對象指針或引用調(diào)用,系統(tǒng)使用__動態(tài)__聯(lián)編:使用對象調(diào)用時,系統(tǒng)使用__靜態(tài)__聯(lián)編。11、將下列程序補充完整、include<iostream、h〉lassconvert{public:convert(double I){va11=I;}___virtualvoidcompute()=0;____protected:doubleval1;doubleva12:;literstogallonsclassl_to_g:publicconvert{public:__void

l_to_g(doublecompute()

I):convert(I){}____{va12=va11/3.7854;cout〈<va11〈<"liters

is"<〈v

al2<〈"gdIons."<<endl;}};//Fahrenheitto Celsiuslassf_to_c:publicconvert{ublic:f_to_c(double I):convert(I){}void&pute(){va12=(va11-32)*5/9;cout〈〈va11<<“Fahrenheit

is

”<<va12〈<“Celsius.”〈<endl;}};voidf{

un(__convert&f____)f、compute();}voidmain(){l_to_g

lgobj(4);f_to_cfcobj(70);fun(lgobj);fun(fcobj);}12、 下列程序得運行結(jié)果如下 :Derive1’sPrint()called.Derive2's Print() caIIed、根據(jù)結(jié)果將程序補充完整。#include<iostream。h>classBase{public:Base(intI){

b=I;}__virtual

Print()=0;____protec

ted:int

b;}classDerive1:publicBase{public:__Derive1(int&I):Base(I){} ___voidPrint(){cout<<"Derive1'sPrint() called、”〈<endl;}};lassDerive2:publicBase{public:Derive2(intI):Base(I){}voidPrint(){cout〈<“Derive2

’sPrint()

called.

”〈〈endl;}};void

fun(__Bas

e*obj

____){obj—>Print();;void main(){Derive1

*d1=new

Derive1(1);Derive2

*d2=new

Deriv

e2(2);fun(d1);fun(d2);}13、在一個成員函數(shù)內(nèi)調(diào)用一個虛函數(shù)時14、帶有__純虛函數(shù)__得類稱為抽象類

,對該虛函數(shù)得調(diào)用進行 _動態(tài)__聯(lián)編。,它只能作為__基類__來使用、4、3簡答題、成員函數(shù)重載與虛函數(shù)得區(qū)別B、靜態(tài)聯(lián)編與動態(tài)聯(lián)編得含義C、純虛函數(shù)與抽象類得定義及其關(guān)系D、抽象類得特點4、4讀程序題1、寫出下列程序得運行結(jié)果。include<iostream。h>lassBase{ublic:Base(inti){x=i;cout〈<”Base:”<〈x〈<endl;}virtual~Base(){cout〈<"~Base:”<<x<〈endl;}private:intx;;classDerived:publicBase{public:?Derived(int i,int j):Base(i){y=j(luò);cout<〈"Derived:"<〈y<<endl;}~Derived(){cout<<"~Derived:"〈<y<<endl;}private:int y;;voidmain(){?Base *b1=newBase(15);?delete b1;Base*b2=newDerived(20,25);?delete b2;}答案Base:15~Base:15Base:20Derived:25~Derived:25Base:202、閱讀下列程序 ,回答后面提出得問題、#include<iostream、h>lassBase{public:Base():x(0),y(0){}ase(intI,intj):x(I),y(j){}intGetX()const{returnx;}intGetY()const{returny;}?virtualvoidPrint() const{cout<〈"x="〈〈x<〈””〈<"y="<〈y〈<endl;}?virtual ~Base(){Print();}private:intx,y;;class Derived:public Base{ublic:?Derived():z(0){}Derived(intI,intj,int k):Base(I,j),z(k){}?void Print() const?{cout〈<”x+z=”<〈Base::GetX()+z〈<" "<〈”y+z="<<Base::GetY()+z

<〈endl;}~Derived(){Print();}private:intz;};voidmain(){?Base *d1=newDerived;d1->Print();?Base*d2=newDerived(10,20,30);?d2->Print();?delete

d2;?delete

d1;}答案x+z=0

y+z=0x+z=40

y+z=50+z=40y+z=50x=10 y=20x+z=0 y+z=0x=0 y=03、閱讀下列程序 ,回答后面提出得問題、include〈iostream。h〉classVehicle{public:void?virtual

SetColor(intc){color=c;}voidMove(){cout〈〈”Vehicle

moving?!?lt;〈endl;}rivate:?intcolor;;classCar:publicVehicle{public:voidMove(){cout<<”Carmoving。"〈<endl;};classBus:publicVehicle{public:void Move(){cout<<”Busmoving、"<<endl;}};classSportsCar:public Car{;classCoupe:publicCar{public:?voidMove(){cout<〈”Coupemoving、”〈<endl;}};voidmain(){?Vehicle*vec;?vec=new Car;?vec->Move();deletevec;vec=new Bus;ec—>Move();deletevec;ec=newSportsCar;vec—>Move();?delete vec;?vec=new Coupe;?vec—>Move();?delete vec;}答案:armoving.Busmoving.Carmoving。Coupemoving。運算符重載5.1選擇題友元運算符 obj〉obj2被C++編譯器解釋為 (A)。A)operat(yī)or>(obj1,obj2))>(obj1,obj2)C)obj2、operator>(obj1)D)obj1、oprator〉(obj2)下面對C++運算符得正確得描述就是 (D)。只有類成員運算符只有友元運算符C)只有非成員與非友元運算符上述三者都有下列關(guān)于C++運算符函數(shù)得返回類型得描述中 ,錯誤得就是(C)??梢跃褪穷愵愋涂梢跃褪牵閚t類型C)可以就是 void類型可以就是float類型重載賦值操作符時,應(yīng)聲明為(C)函數(shù)。友元虛成員多態(tài)在一個類中可以對一個操作符進行 (D)重載。)1種B)2種以下C)3種以下D)多種下列關(guān)于運算符重載得描述中 ,正確得就是(D)。運算符重載可以改變運算符得操作數(shù)得個數(shù)B)運算符重載可以改變優(yōu)先級C)運算符重載可以改變結(jié)合性)運算符重載不可以改變語法結(jié)構(gòu)下列運算符中,(C)運算符在C++中不能重載。A)=)()C)::)delete下列運算符中,(A)運算符在C++中不能重載。A〕?:B)[])new)&&在重載運算符函數(shù)時 ,下面(D)運算符必須重載為類成員函數(shù)形式。)+B)-++D)-〉下列運算符不能用友元函數(shù)重載得就是 (B)。A)+=)*D)<〈下面對友元得錯誤描述就是 (D)關(guān)鍵字friend用于聲明友元一個類得成員函數(shù)可以就是另一個類得友元友元函數(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)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論