第 1 頁:選擇題 |
第 5 頁:參考答案 |
21.A。【解析】該題考查了函數(shù)參數(shù)傳遞的兩種方式:引用傳遞和值傳遞,引用傳遞時x和y會交換,而值傳遞時二者不交換,因此選10。
22.C!窘馕觥棵空{(diào)用一次get函數(shù)時,對新的類A對象進行一次實例化,調(diào)用一次構(gòu)造函數(shù),類A的靜態(tài)成員變量b便加1。
23.D。【解析】簡單類之間繼承關(guān)系的調(diào)用,按照通常做法便可以得到答案。center.get()函數(shù)調(diào)用后,3和4的和被返回,接著再調(diào)用Circle類的radius成員變量5相加后得到12。
24.A!窘馕觥緾++不僅可以對運算符進行重載,還可以重載類型轉(zhuǎn)換符,函數(shù)聲明的形式為:0perator類型符()const。
25.C!窘馕觥亢瘮(shù)返回類型是double型,則T1為double型,T2為int型才符合函數(shù)模板的定義。
26.D!窘馕觥縮etw(6)將輸出寬度設(shè)為6,如果位數(shù)不夠,則在最左邊補齊,因此該項輸出一定不會與其他3項一致。
27.A!窘馕觥课鰳(gòu)函數(shù)不能被重載,因為它的函數(shù)中不帶有任何參數(shù),也沒任何返回值,函數(shù)只有一個版本即“~類名(){}”。
28.B。【解析】構(gòu)造函數(shù)沒有返回值,雖然叫函數(shù),但是它沒有任何返回值,包括void型都不是,官方叫法應(yīng)該叫“構(gòu)造器”。
29.A!窘馕觥縋AT(*ad){3}該表達式表示一個指向類PAT的數(shù)組的指針,只是聲明了該指針,而并沒有進行實例化對象,因此該語句運行時并不會調(diào)用構(gòu)造函數(shù)。
30.C!窘馕觥勘Wo繼承時,類成員的訪問級別只能是降低為保護模式,因此即使基類的公有成員,也被縮小為保護模式。
31.D。【解析】派生類的構(gòu)造函數(shù)必須通過調(diào)用基類的構(gòu)造函數(shù)來初始化基類子對象。所以在定義派生類的構(gòu)造函數(shù)時,除了對自己的類據(jù)成員進行初始化外,還必須負責調(diào)用基類構(gòu)造函數(shù),使基類的數(shù)據(jù)成員得以初始化。
32.B!窘馕觥颗缮惓蓡T函數(shù)不能訪問基類的private成員,只能由基類的對象來訪問。這才體現(xiàn)了C++的數(shù)據(jù)封裝特性。
33.C。【解析】該題考查了C++模板類和+運算符重載的知識,3+b1時,程序不能將b1轉(zhuǎn)化為整型,所以編譯會出錯。
34.C!窘馕觥枯斎肓饕蜷_的文件不存在,則會自動建立該文件,而輸出流要打開的文件不存在,則會報錯,而不會新建一個文件。
35.B!窘馕觥縞onst函數(shù)只能被const對象調(diào)用,a.get()函數(shù)調(diào)用返回值是3,而b.get()調(diào)用的返回值是8。
36.B!窘馕觥勘绢}考查的是變量的作用域及其生存周期。一個全局變量的生存周期從它被聲明開始,直到程序結(jié)束;一個局部變量的生存周期從它被聲明開始,直到包含它的最近的一個程序塊結(jié)束。靜態(tài)變量的生存周期將延續(xù)到整個程序的終止。
37.A!窘馕觥緾++在創(chuàng)建一個對象時,會調(diào)用類的構(gòu)造函數(shù)。執(zhí)行MyClassab,(2),*P;創(chuàng)建了兩個對象a、b和指針P,在創(chuàng)建對象a和b會調(diào)用構(gòu)造函數(shù),而創(chuàng)建指針P時,由于P本身不是對象,所以不調(diào)用類的構(gòu)造函數(shù)。
38.D!窘馕觥窟壿嬤\算符“‖”表示或的意思。
39.C。【解析】本題考查簡單的if…else語句。先執(zhí)行條件if(a40.D!窘馕觥緾++語言中析構(gòu)函數(shù)為符號“~”加類名,且析構(gòu)函數(shù)沒有返回值和參數(shù),故前不加void關(guān)鍵字。所以正確的形式應(yīng)該是~MyClass()。
編輯推薦:
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |