C考試題庫及答案
《C考試題庫及答案》由會員分享,可在線閱讀,更多相關(guān)《C考試題庫及答案(49頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、判斷char型變量cl是否為小寫字母的正確表達(dá)式是________。〔2.0分〕 A、 (cl>=a)&&(cl<=z) B、 (a>=cl)||(z<=cl) C、 a<=cl<=z D、 (cl>=a)&&(cl<=z) 假定MyClass為一個類,那么執(zhí)行"MyClass a(2),b[5],*c[4]"后,執(zhí)行構(gòu)造函數(shù)的次數(shù)為________?!?.0分〕 A、 6 B、 11 C、 10 D、 5 char *s1="hello",*s2;s2=s1;那么________?!?.0分〕 A、 s1不能再指向其
2、它單元
B、
cout<
3、?!?.0分〕 A、 一個對象調(diào)用不同名稱的對象 B、 一個對象調(diào)用不同名稱的函數(shù) C、 不同的對象調(diào)用一樣名稱的函數(shù) D、 不同的對象調(diào)用不同名稱的函數(shù) 關(guān)于new運算符的以下描繪中,________是錯的?!?.0分〕 A、 使用它創(chuàng)立對象數(shù)組時必須指定初始值 B、 它可以用來動態(tài)創(chuàng)立對象和對象數(shù)組 C、 使用它創(chuàng)立對象時要調(diào)用構(gòu)造函數(shù) D、 使用它創(chuàng)立的對象和對象數(shù)組可以使用運算符delete刪除 以下正確的說法是:在C++語言中進(jìn)展值傳遞時________。〔2.0分〕 A、 形參是虛擬的,不占用存儲單元 B
4、、 實參和與其對應(yīng)的形參各占用獨立的存儲單元 C、 只有當(dāng)實參和與其對應(yīng)的形參同名時才共占用存儲單元 D、 實參和與其對應(yīng)的形參共占用一個存儲單元 C++類體系中,能被派生類繼承的是________?!?.0分〕 A、 友元函數(shù) B、 析構(gòu)函數(shù) C、 構(gòu)造函數(shù) D、 虛函數(shù) 對于重載的運算符>>,它是一個________?!?.0分〕 A、 用于輸出的成員函數(shù) B、 用于輸入的友元函數(shù) C、 用于輸入的成員函數(shù) D、 用于輸出的友元函數(shù) _______是一個在基類中說明的虛函數(shù),它在該基類中沒有
5、定義,但要求任何派生類都必須定義自己的版本。〔2.0分〕 A、 靜態(tài)成員函數(shù) B、 純虛函數(shù) C、 虛析構(gòu)函數(shù) D、 虛構(gòu)造函數(shù) 定義重載函數(shù)的以下要求中,________是錯誤的?!?.0分〕 A、 要求函數(shù)的返回值不同 B、 要求參數(shù)個數(shù)一樣時,參數(shù)類型不同 C、 要求參數(shù)中至少有一個類型不同 D、 要求參數(shù)的個數(shù)不同 可以通過友元函數(shù)重載的運算符為________。〔2.0分〕 A、 >> B、 () C、 = D、 [] 在以下運算符中,不能重載的是________。〔2.0分
6、〕 A、 delete B、 sizeof C、 ! D、 new 以下運算符中,________運算符在C++語言中不能重載?!?.0分〕 A、 new B、 [] C、 += D、 :: 可以通過友元函數(shù)重載的運算符為________。〔2.0分〕 A、 () B、 [] C、 = D、 >> 不能被重載的運算符 1、. (成員訪問運算符) 2、.* (成員指針訪問運算符) 3、:: (域運算符) 4、sizeof(長度運算符) 5、?: (條件運算符〕 以下運算符中,只能作
7、為類成員函數(shù)重載的是________?!?.0分〕 A、 = B、 << C、 ++ D、 + 類MyA的拷貝初始化構(gòu)造函數(shù)是________?!?.0分〕 A、 MyA(MyA) B、 MyA(MyA&) C、 MyA(MyA*) D、 MyA(); 用cin為整型變量輸入數(shù)據(jù)時,假如從鍵盤輸入的不是數(shù)字,輸入后整型變量中的結(jié)果會是:________〔2.0分〕 A、 不確定 B、 0 C、 正數(shù) D、 負(fù)數(shù) 在C++語言中,引用數(shù)組元素時,其數(shù)組下標(biāo)的數(shù)據(jù)類型允許是____
8、____?!?.0分〕 A、 任何類型的表達(dá)式 B、 整型表達(dá)式 C、 整型常量或整型表達(dá)式 D、 整型常量 關(guān)于類模板描繪不正確的選項是________?!?.0分〕 A、 根據(jù)它可以定義多個對象 B、 它的存在不代表一個詳細(xì)的、實際的類,而是代表一類的類 C、 它可以使類中的某些數(shù)據(jù)取任意類型 D、 根據(jù)它可以產(chǎn)生一系列類 以下說法不正確的選項是________?!?.0分〕 A、 不同函數(shù)中,可以使用一樣名字的變量 B、 在一個函數(shù)內(nèi)部,可以在復(fù)合語句中定義變量,這些變量只在復(fù)合語句中有效 C、 形式
9、參數(shù)是部分變量 D、 主函數(shù)main中定義的變量在整個文件或程序中有效 建立包含有類對象成員的派生類對象時,自動調(diào)用構(gòu)造函數(shù)的執(zhí)行順序依次為________的構(gòu)造函數(shù)?!?.0分〕 A、 基類、自己所屬類、對象成員所屬類 B、 對象成員所屬類、基類、自己所屬類 C、 自己所屬類、對象成員所屬類、基類 D、 基類、對象成員所屬類、自己所屬類 關(guān)于運算符重載,以下表述中正確的選項是________?!?.0分〕 A、 可以通過運算符重載來創(chuàng)立C++中原來沒有的運算符 B、 在類型轉(zhuǎn)換函數(shù)的定義中不需要聲明返回類型 C、
10、 運算符函數(shù)的返回類型不能聲明為根本數(shù)據(jù)類型 D、 C++已有的任何運算符都可以重載 以下關(guān)于運算符重載不正確的選項是________?!?.0分〕 A、 運算符重載不能改變運算符的優(yōu)先級 B、 運算符重載能改變對預(yù)定義類型數(shù)據(jù)的操作方式 C、 運算符重載不能改變運算符的結(jié)合性 D、 運算符重載不能改變運算符的操作數(shù)個數(shù) 在表達(dá)式x+y*z中,+是作為成員函數(shù)重載的運算符,*是作為非成員函數(shù)重載的運算符。以下表達(dá)中正確的選項是________?!?.0分〕 A、 operator+有兩個參數(shù),operator*有一個參數(shù) B、 opera
11、tor+有兩個參數(shù),operator*有兩個參數(shù) C、 operator+有一個參數(shù),operator*有兩個參數(shù) D、 operator+有一個參數(shù),operator*有一個參數(shù) +和*都是二元運算符,當(dāng)作為成員函數(shù)重載時,參數(shù)表中只有一個參數(shù),對應(yīng)于第二個參數(shù),而第一個操作數(shù)就是對象本身,僅以this指針的形式隱藏在參數(shù)表中.當(dāng)作為非成員函數(shù)重載時有兩個參數(shù)。 以下表達(dá)中正確的選項是________?!?.0分〕 A、 靜態(tài)(static)類別變量的生存期貫穿于整個程序的運行期間 B、 函數(shù)的形參都屬于全局變量 C、 未在定義語句中賦初值的a
12、uto變量和static變量的初值都是隨機(jī)值 D、 全局變量的作用域一定比部分變量的作用域范圍大 在公有派生情況下,有關(guān)派生類對象和基類對象的關(guān)系,不正確的表達(dá)是________?!?.0分〕 A、 派生類的對象的地址可以賦給指向基類的指針 B、 派生類的對象可以初始化基類的引用 C、 派生類的對象可以直接訪問基類中的成員 D、 派生類的對象可以賦給基類的對象 不能作為重載函數(shù)的調(diào)用的根據(jù)是________?!?.0分〕 A、 函數(shù)名稱 B、 參數(shù)類型 C、 參數(shù)個數(shù) D、 函數(shù)類型 假設(shè)已定義的函數(shù)
13、有返回值,那么以下關(guān)于該函數(shù)調(diào)用的表達(dá)中錯誤的選項是________?!?.0分〕 A、 函數(shù)調(diào)用可以作為一個函數(shù)的形參 B、 函數(shù)調(diào)用可以出如今表達(dá)式中 C、 函數(shù)調(diào)用可以作為獨立的語句存在 D、 函數(shù)調(diào)用可以作為一個函數(shù)的實參 在有參函數(shù)調(diào)用中,是將主調(diào)函數(shù)的實參值傳給被調(diào)函數(shù)的形參。按函數(shù)在程序中出現(xiàn)的位置來分,有以下三種函數(shù)調(diào)用形式: ①函數(shù)調(diào)用作為一條語句。例如:fun();這時不要求函數(shù)帶回值,只要求函數(shù)完成一定的操作。應(yīng)選項A)正確。 ②函數(shù)出如今表達(dá)式中,這種表達(dá)式稱為函數(shù)表達(dá)式。這時要求函數(shù)帶回一個確定的值以參加表達(dá)式的運算。例如:c=5
14、*max(a,b);函數(shù)max是表達(dá)式的一部分,將其值乘以5后賦給 c。應(yīng)選項C)正確。 ③函數(shù)調(diào)用作為一個函數(shù)的實參,例如:m=max(a,max(b,c));其中max(b,c)是一次函數(shù)調(diào)用,它的值作為max另一次調(diào)用的實參。應(yīng)選項B)正確。 函數(shù)調(diào)用不可作為一個函數(shù)的形參,因為函數(shù)調(diào)用參數(shù)的數(shù)據(jù)傳遞是單向傳遞,即實參傳給形參,不能由形參傳給實參。應(yīng)選項A)錯誤。
假如a=1,b=2,c=3,d=4,執(zhí)行表達(dá)式 a>b?a:c 15、環(huán)執(zhí)行次數(shù)是________。 for(i=2;i==0;) cout< 16、
A、
1
B、
123
C、
3
D、
321
假如有如下語句 char str[20]; cin >> str; cout << str; 執(zhí)行時輸入的是“this is a test line!〞,那么輸出的內(nèi)容是________。〔2.0分〕
A、
this
B、
this is a test line!
C、
this is a test line
D、
this is a test
cin流遇空白符號完畢,因此只會讀入第一個單詞this,輸出this
關(guān)于析構(gòu)函數(shù)的特征,正確的選項是________。〔2 17、.0分〕
A、
析構(gòu)函數(shù)和構(gòu)造函數(shù)都可重載
B、
析構(gòu)函數(shù)必須將指針類型的數(shù)據(jù)成員的值置未NULL
C、
析構(gòu)函數(shù)不能有參數(shù)
D、
析構(gòu)函數(shù)的返回值必須為void
析構(gòu)函數(shù)沒有數(shù)據(jù)類型,也沒有參數(shù),沒有返回值,一個類只能有一個析構(gòu)函數(shù)。
以下關(guān)于虛函數(shù)的說明中,正確的選項是________?!?.0分〕
A、
抽象類中的成員函數(shù)都是虛函數(shù)
B、
虛函數(shù)不得是靜態(tài)成員函數(shù)
C、
只能通過指針或引用調(diào)用虛函數(shù)
D、
從虛基類繼承的函數(shù)都是虛函數(shù)
以下關(guān)于成員函數(shù)的描繪中,正確的選項是________?!?.0分〕
A、 18、
成員函數(shù)可以有默認(rèn)參數(shù)
B、
成員函數(shù)一定是內(nèi)聯(lián)函數(shù)
C、
成員函數(shù)沒有返回值
D、
成員函數(shù)可以通過類名直接調(diào)用
函數(shù)的形參是________?!?.0分〕
A、
外部變量
B、
部分變量
C、
全局變量
D、
靜態(tài)變量
在那種情況下不需要使用初始化列表________。〔2.0分〕
A、
類數(shù)據(jù)成員
B、
初始化常量數(shù)據(jù)成員
C、
普通的數(shù)據(jù)成員
D、
調(diào)用基類的構(gòu)造函數(shù)
在C++語言中,char型數(shù)據(jù)在內(nèi)存中的存儲形式是________。〔2.0分〕
A、
反碼
B、
補碼
19、
C、
原碼
D、
ASCII碼
________不是構(gòu)造函數(shù)的特征?!?.0分〕
A、
構(gòu)造函數(shù)可以重載
B、
構(gòu)造函數(shù)必須指定類型說明
C、
構(gòu)造函數(shù)可以設(shè)置缺省參數(shù)
D、
構(gòu)造函數(shù)的函數(shù)名與類名一樣
關(guān)于純虛函數(shù)和抽象類的描繪,錯誤的選項是________〔2.0分〕
A、
抽象類只能作為基類來使用,其純虛函數(shù)的實現(xiàn)由派生類給出
B、
純虛函數(shù)是一種特殊的函數(shù),它沒有詳細(xì)實現(xiàn)代碼
C、
一個基類中聲明有純虛函數(shù),該基類的派生類一定不再是抽象類
D、
抽象類是指具有純虛函數(shù)的類
假如在派生類 20、中沒有對純虛函數(shù)進(jìn)展了定義,那這個派生類也是抽象類.不能用來定義對象
以下對派生類的描繪中,________是錯誤的?!?.0分〕
A、
派生類中繼承的基類成員的訪問權(quán)限到派生類保持不變
B、
一個派生類可以作為另一個派生類的基類
C、
派生類至少有一個基類
D、
派生類的成員除了它自己的成員外,還包含了它的基類成員
關(guān)于關(guān)鍵字class和typename,以下表述正確的選項是________?!?.0分〕
A、
程序中所有的typename都可以交換為class
B、
程序中所有的class都可以交換為typename
C、
A)和 21、B)都可以
D、
A)和B)都不可以
:類A中一個成員函數(shù)說明如下: void Set(A& a); 其中,A&的含義是________?!?.0分〕
A、
將a的地址值賦給變量Set
B、
a是類A對象的引用,用來作函數(shù)Set()的參數(shù)
C、
變量A與a按位與作為函數(shù)Set()的參數(shù)
D、
指向類A的指針為a
在公有派生情況下,有關(guān)派生類對象和基類對象的關(guān)系,不正確的表達(dá)是________?!?.0分〕
A、
派生類的對象的地址可以賦給指向基類的指針
B、
派生類的對象可以直接訪問基類中的成員
C、
派生類的對象可以 22、初始化基類的引用
D、
派生類的對象可以賦給基類的對象
關(guān)于this指針使用說法正確的選項是________?!?.0分〕
A、
保證基類私有成員在子類可以被訪問
B、
保證基類共有成員在子類可以被訪問
C、
保證每個對象都擁有自己的數(shù)據(jù)成員,但共享處理這些數(shù)據(jù)的代碼
D、
保證基類保護(hù)成員在子類可以被訪問
以下函數(shù)中,不能重載運算符的函數(shù)是________。〔2.0分〕
A、
友元函數(shù)
B、
成員函數(shù)
C、
普通函數(shù)
D、
構(gòu)造函數(shù)
以下關(guān)于運算符重載的表達(dá)中,正確的選項是________?!?.0分〕
A、 23、
重載一個二元運算符時,必須聲明兩個形參
B、
有的運算符只能作為成員函數(shù)重載
C、
通過運算符重載,可以定義新的運算符
D、
假設(shè)重載運算符+,那么相應(yīng)的運算符函數(shù)名是+
當(dāng)一個類的某個函數(shù)被說明為virtual時,該函數(shù)在該類的所有派生類中________。〔2.0分〕
A、
都不是虛函數(shù)
B、
只有被重新說明時才是虛函數(shù)
C、
只有被重新說明為virtual時才是虛函數(shù)
D、
都是虛函數(shù)
拷貝構(gòu)造函數(shù)的參數(shù)是________?!?.0分〕
A、
某個對象的指針名
B、
某個對象名
C、
某個對象的成員名 24、
D、
某個對象的引用名
以下不是描繪類的成員函數(shù)的是________。〔2.0分〕
A、
拷貝構(gòu)造函數(shù)
B、
析構(gòu)函數(shù)
C、
友元函數(shù)
D、
構(gòu)造函數(shù)
拷貝構(gòu)造函數(shù)的參數(shù)是________?!?.0分〕
A、
某個對象的指針名
B、
某個對象名
C、
某個對象的成員名
D、
某個對象的引用名
設(shè) int x=1, y=1; 表達(dá)式(!x||y--)的值是____1____。
執(zhí)行語句 int i = 10; cout << i++ + i++; 輸出結(jié)果是________?!?.0分〕
A、
不確定
25、
B、
22
C、
20
D、
21
拷貝構(gòu)造函數(shù)的參數(shù)通常是________?!?.0分〕
A、
無特殊要求
B、
對象
C、
指向?qū)ο蟮闹羔?
D、
自身類對象的常引用
以下表達(dá)中不正確的選項是________?!?.0分〕
A、
以下是正確的宏定義 #define IBM_PC
A選項,這樣的宏定義運行時未報錯,在使用時,就將其看做什么也沒有,例如, int x=5; printf("number is %d",BM_DEF x);
B、
預(yù)處理命令行都必須以#號開場
C、
C++程序在執(zhí)行過程中對預(yù)處理命令行 26、進(jìn)展處理
D、
在程序中但凡以#號開場的語句行都是預(yù)處理命令行
關(guān)于在調(diào)用模板函數(shù)時模板實參的使用,以下表述中正確的選項是________。〔2.0分〕
A、
對于常規(guī)參數(shù)所對應(yīng)的模板實參,任何情況下都不能省略
B、
對于虛擬類型參數(shù)所對應(yīng)的模板實參,假設(shè)可以省略那么必須省略
C、
對于虛擬類型參數(shù)所對應(yīng)的模板實參,假如能從模板函數(shù)的實參中獲得一樣的信息,那么都可以省略
D、
對于虛擬類型參數(shù)所對應(yīng)的模板實參,假如它是參數(shù)表中的最后的假設(shè)干個參數(shù),那么都可以省略
在調(diào)用一個模板函數(shù)時,編譯系統(tǒng)需要足夠的信息來判別每個虛擬類型參數(shù)所對應(yīng)的實際類型, 27、可以從兩個不同的渠道獲得這樣的信息:從模板實參表(用“<>〞括起來的參數(shù)表)或從模板函數(shù)實參表(用“()〞括起來的參數(shù)表)。假如從后者獲得的信息已經(jīng)可以斷定其中部分或全部虛擬類型參數(shù)所對應(yīng)的實際參數(shù),而且它們又正好是參數(shù)表中最后的假設(shè)干參數(shù),那么模板實參表中的那幾個參數(shù)可以省略。假如模板實參表中的實參都被省略了,那么空表“<>〞也可以不要,因此選項D錯誤。反之,對于某個模板實參,假如從模板函數(shù)的實參表中無法獲得同樣的信息,就不能省略;或者雖然可以獲得同樣的信息,但在它后面還有其他不能省略的實參,那么其自身還是不能省略。
在派生類中,重載一個虛函數(shù)時,要求函數(shù)名、參數(shù)的個數(shù)、參數(shù)的類型、參 28、數(shù)的順序和函數(shù)的返回值________。〔2.0分〕
A、
部分一樣
B、
不同
C、
一樣
D、
相容
一個C++程序的執(zhí)行是從________.〔2.0分〕
A、
本程序文件的第一個函數(shù)開場,到本程序main函數(shù)完畢
B、
本程序文件的第一個函數(shù)開場,到本程序文件的最后一個函數(shù)完畢
C、
本程序的main函數(shù)開場,到本程序文件的最后一個函數(shù)完畢
D、
本程序的main函數(shù)開場,到main函數(shù)完畢
以下對C++語言函數(shù)的描繪中,正確的選項是________?!?.0分〕
A、
C++程序必須由一個或一個以上的函數(shù) 29、組成
B、
函數(shù)既可以嵌套定義又可以遞歸調(diào)用
C、
函數(shù)必須有返回值,否那么不能使用函數(shù)
D、
C++程序中有調(diào)用關(guān)系的所有函數(shù)必須放在同一個程序文件中
以下關(guān)于友元函數(shù)描繪,正確的選項是________?!?.0分〕
A、
在類的外部定義友元函數(shù)時必須加上friend關(guān)鍵字
B、
一個友元函數(shù)不能同時定義為兩個類的友元函數(shù)
C、
友元函數(shù)是獨立于當(dāng)前類的外部函數(shù)
D、
友元函數(shù)必須在類的外部進(jìn)展定義
友元函數(shù)________?!?.0分〕
A、
不能修改數(shù)據(jù)成員的值
B、
只能用對象名來調(diào)用
C、
沒有t 30、his指針
D、
可以用類名或?qū)ο竺麃碚{(diào)用
類A是類B的友元, 類B是類C的友元,那么________?!?.0分〕
A、
類C的成員可以訪問類B對象的任意成員
B、
類A的成員函數(shù)可以訪問類B對象的任意成員
C、
類C一定是類A的友元
D、
類A一定是類C的友元
關(guān)于類模板,以下描繪錯誤的選項是________?!?.0分〕
A、
函數(shù)的類模板參數(shù)須通過構(gòu)造函數(shù)實例化
B、
根據(jù)建立對象時的實際數(shù)據(jù)類型,編譯器把類模板實例化為模板類
C、
類模板從普通類派生,也可以從類模板派生
D、
一個普通基類不能派生 31、類模板
在重載一個運算符時,假如其參數(shù)表中有一個參數(shù),那么該運算符是________?!?.0分〕
A、
選項B和C都有可能
B、
二元成員運算符
C、
一元友元運算符
D、
一元成員運算符
重載一目運算符沒有參數(shù),重載二目運算符要有一個參數(shù)
關(guān)于純虛函數(shù)和抽象類的描繪,錯誤的選項是________〔2.0分〕
A、
抽象類只能作為基類來使用,其純虛函數(shù)的實現(xiàn)由派生類給出
B、
一個基類中聲明有純虛函數(shù),該基類的派生類一定不再是抽象類
C、
純虛函數(shù)是一種特殊的函數(shù),它沒有詳細(xì)實現(xiàn)代碼
D、
抽象類是指具有純虛函數(shù)的類
32、
在一個類體中包含如下函數(shù)原型:VOLUME operator-(VOLUME)const;以下關(guān)于這個函數(shù)的表達(dá)中,錯誤的選項是________。〔2.0分〕
A、
這是運算符-的重載運算符函數(shù)
B、
這個函數(shù)所重載的運算符是一個一元運算符
C、
這是一個成員函數(shù)
D、
這個函數(shù)不改變數(shù)據(jù)成員的值
以下定義數(shù)組的語句中正確的選項是________。〔2.0分〕
A、
#define size 10 char str1[size],str2[size+2];
B、
char str[];
C、
int num[10];
D、
int 33、 n=5; int a[n][n+2];
所謂數(shù)據(jù)封裝就是將一組數(shù)據(jù)和與這組數(shù)據(jù)有關(guān)操作組裝在一起,形成一個實體,這實體也就是________?!?.0分〕
A、
數(shù)據(jù)塊
B、
類
C、
函數(shù)體
D、
對象
以下函數(shù)模板的定義中,合法的是________?!?.0分〕
A、
template T abs(T x){return x 34、emplateT abs(T x){return x<0?-x:x;}
C++對C語言做了很多改良,即從面向過程變成為面向?qū)ο蟮闹饕蚴莀_______?!?.0分〕
A、
允許函數(shù)重載,并允許函數(shù)設(shè)置缺省參數(shù)
B、
規(guī)定函數(shù)說明符必須用原型
C、
增加了一些新的運算符
D、
引進(jìn)了類與對象的概念
C++語言中函數(shù)調(diào)用的方式有________?!?.0分〕
A、
函數(shù)調(diào)用作為語句、函數(shù)表達(dá)式或函數(shù)參數(shù)三種
B、
函數(shù)調(diào)用作為語句一種
C、
函數(shù)調(diào)用作為語句或函數(shù)表達(dá)式兩種
D、
函數(shù)調(diào)用作為函數(shù)表達(dá)式一種
設(shè) 35、int x=1, y=1; 表達(dá)式(!x||y--)的值是________?!?.0分〕
A、
-1
B、
2
C、
1
D、
0
下面判斷是否構(gòu)成重載函數(shù)的條件中,錯誤的判斷條件是________。〔2.0分〕
A、
函數(shù)返回值不同
B、
參數(shù)順序不同
C、
參數(shù)類型不同
D、
參數(shù)個數(shù)不同
以下對C++語言函數(shù)的描繪中,正確的選項是________。〔2.0分〕
A、
C++程序中有調(diào)用關(guān)系的所有函數(shù)必須放在同一個程序文件中
B、
函數(shù)必須有返回值,否那么不能使用函數(shù)
C、
C++程序必須由一個或一個以上的 36、函數(shù)組成
D、
函數(shù)既可以嵌套定義又可以遞歸調(diào)用
有如下類定義: class XA{ int x; public: XA(int n) {x=n;} }; class XB: public XA{ int y; public: XB(int a,int b); }; 在構(gòu)造函數(shù)XB的以下定義中,正確的選項是________?!?.0分〕
A、
XB::XB(int a,int b):XA(a),XB(b){ }
B、
XB::XB(int a,int b):XA(a),y(b) { }
C、
XB::XB(int a,int b):x(a),XB(b) 37、{ }
D、
XB::XB(int?a,int?b):x(a),y(b){?}?
假設(shè)Class Y:public X,即類Y是類X的派生類,那么說明一個Y類的對象時和刪除Y類對象時 ,調(diào)用構(gòu)造函數(shù)和析構(gòu)函數(shù)的次序分別為________?!?.0分〕
A、
Y,X;Y,X
B、
Y,X;X,Y
C、
X,Y;Y,X
〔構(gòu)造從內(nèi)到外,析構(gòu)從外到內(nèi)〕
D、
X,Y;X,Y
解決定義二義性問題的方法有________?!?.0分〕
A、
使用成員名限定或賦值兼容原那么
B、
使用作用域分辨運算符或虛基類
C、
使用作用域分辨運算符 38、或成員名限定
D、
只能使用作用域分辨運算符
關(guān)于多繼承二義性的描繪,________是錯誤的?!?.0分〕
A、
一個派生類是從具有共同的間接基類的兩個基類派生來的,派生類對該公共基類的訪問可能出現(xiàn)二義性
B、
派生類的多個基類中存在同名成員時,派生類對這個成員訪問可能出現(xiàn)二義性
C、
解決二義性最常用的方法是作用域運算符對成員進(jìn)展限定
D、
派生類和它的基類中出現(xiàn)同名函數(shù)時,將可能出現(xiàn)二義性
設(shè)置虛函數(shù)的主要目的是________?!?.0分〕
A、
減少目的代碼
B、
進(jìn)步運行效率
C、
消除二義性
D、
39、
簡化程序
有如下函數(shù)模板定義: templateT func(Tx,Ty){return x*x+y*y;} 在以下對func的調(diào)用中不正確的選項是________?!?.0分〕
A、
func<int>(3,5.5)
B、
func(3,5)
C、
func(3,5.5)
D、
func<>3,5)
定義對象數(shù)組時必須有不需要參數(shù)的構(gòu)造函數(shù)〔2.0分〕T
假設(shè)有 #define S(a,b) a*b 那么語句 area=S(3,2); area的值為6.〔2.0分〕T
char ch1[ ]= "st 40、udent", ch2[10];ch2=ch1; 是錯誤的〔2.0分〕T
數(shù)組名是個名字,不可被賦值。
要想實現(xiàn)數(shù)組拷貝可以用memcpy
字符串拷貝還可以用strcpy
賦值兼容規(guī)那么也適用于多繼承的組合?!?.0分〕T
在建立派生類時,并不是簡單地把基類的私有成員直接作為派生類的私有成員,把基類的公用成員直接作為派生類的公用成員。涉及如何確定基類的成員在派生類中的訪問屬性問題,不僅要考慮對類成員所聲明的訪問屬性,還要考慮派生類所聲明的對基類的繼承方式.
定義類的非成員函數(shù)運算符重載,必須將它聲明為友元函數(shù)?!?.0分〕F
構(gòu)造函數(shù)和析構(gòu)函數(shù)的返回類型為void〔2.0分〕 41、F
(構(gòu)造函數(shù)的名字與類的名字一樣,并且不能指定返回類型)
構(gòu)造函數(shù)實現(xiàn)類的類型轉(zhuǎn)換,不合適將其它類型轉(zhuǎn)換成類類型。F
在說明一個構(gòu)造變量后,不能整體引用構(gòu)造體變量,需要逐一引用。T
所謂私有成員是指只有類中所提供的成員函數(shù)才能直接使用它們,任何類外的函數(shù)對它們的訪問都是非法的?!?.0分〕F 〔私有成員還可以被友元函數(shù)訪問〕
基類中說明了虛函數(shù)后,派生類中與其對應(yīng)的函數(shù)可不必說明為虛函數(shù)。T
子類可以新添自己的數(shù)據(jù)成員,但成員函數(shù)只能從父類繼承。F
子類可以新添自己的成員函數(shù),但數(shù)據(jù)成員只能從父類繼承。F
C++中有五種作用域分別為文件作用域、塊作用域、函數(shù)作用域、函數(shù)原型作 42、用域和類作用域。T
基類構(gòu)造函數(shù)的調(diào)用順序是由它們在派生類的構(gòu)造函數(shù)實現(xiàn)中初始化表中出現(xiàn)的順序決定的。F
常量對象只能調(diào)用常量成員函數(shù)和靜態(tài)成員函數(shù),無法調(diào)用普通成員函數(shù)。T
賦值運算符只能作為成員函數(shù)進(jìn)展重載。T
(因為編譯器會提供一個默認(rèn)的賦值運算符,你假如把自己定義賦值運算符的寫成友元的話,函數(shù)的參數(shù)列表不一樣,不會發(fā)生重載)
作為虛函數(shù)隱含參數(shù)的this指針,決定了虛函數(shù)調(diào)用時執(zhí)行的代碼。T
對于函數(shù)原型:int fun(int a, int b=300,int c=200,int d=100);可以使用如下方式調(diào)用:fun();F
常對象只能調(diào)用常成員函數(shù)。T
包含空 43、格的字符數(shù)組輸入時,常常使用C++的cin.outline()函數(shù)實現(xiàn)。F
派生類的虛函數(shù)與基類的虛函數(shù)需要有不同的形式參數(shù)。F
派生類能過通過繼承關(guān)鍵字改變對基類的函數(shù)成員的訪問權(quán)限。T
根據(jù)數(shù)據(jù)的組織形式,可以分為ASCII文件和文本文件兩種。F〔應(yīng)為ASCII文件和二進(jìn)制文件〕
對于內(nèi)聯(lián)函數(shù),c++編譯器執(zhí)行內(nèi)聯(lián)擴(kuò)展,將函數(shù)代碼直接插入每一處調(diào)用途.由此可以減少函數(shù)調(diào)用的開銷。T
假如函數(shù)值的類型和return語句中表達(dá)式的值不一致,那么以函數(shù)類型為準(zhǔn)。T
容器(container)是用來存儲其他對象的對象,它是用模板技術(shù)實現(xiàn)的。T
類的友元函數(shù)可以訪問該類對象的所有成員。 44、T
類的構(gòu)造函數(shù)可以有默認(rèn)參數(shù),但類內(nèi)的普通成員函數(shù)不能有默認(rèn)參數(shù)。F
可以顯式調(diào)用對象的構(gòu)造函數(shù)。F
在運算符重載中,operator是保存關(guān)鍵字,表示運算符函數(shù)T
友元函數(shù)訪問對象中的成員可以不通過對象名。F
友元函數(shù)是在類聲明中由關(guān)鍵字friend修飾說明的類的成員函數(shù)。F
進(jìn)展宏定義時,宏名必須使用大寫字母表示。F
C++語言把文件看作是字符(字節(jié))的序列,即由一個一個字符(字節(jié))的數(shù)據(jù)按照隨機(jī)順序組成。F
靜態(tài)數(shù)據(jù)成員必須在類外定義和初始化。T
重載流操作符<<和>> 時,假如第一個參數(shù)的類型為ostream 和istream,那么這個重載函數(shù)既可以用于標(biāo)準(zhǔn)輸入輸出 45、流,也可以用于文件流上。 T
純虛函數(shù)與函數(shù)體為空的虛函數(shù)等價。F
作為虛函數(shù)隱含參數(shù)的this指針,決定了虛函數(shù)調(diào)用時執(zhí)行的代碼。T
運算符的重載形式有兩種,重載為類的成員函數(shù)和重載為類的友元函數(shù)?!?.0分〕T
在同一個類中,可以定義重載的成員函數(shù) void f(int);和virtual void f(int); F
類內(nèi)的常量數(shù)據(jù)成員必須用初始化列表來初始化數(shù)據(jù)成員。T
多重繼承往往產(chǎn)生二義性問題,可用成員名限定法來消除,這對成員變量、成員函數(shù)都適用。T
基類成員的訪問才能在派生類中維持不變。F
C++語言中只能逐個引用數(shù)組元素而不能一次引用整個數(shù)組?!?.0分〕T
46、運行時的多態(tài)性可通過模板和虛函數(shù)實現(xiàn)。F 靜態(tài)通過重載,動態(tài)通過虛函數(shù)和基類指針〔引用〕來實現(xiàn)。
靜態(tài)成員函數(shù)不能訪問非靜態(tài)的類成員〔2.0分〕T
虛函數(shù)可以是static類型的函數(shù)。F
設(shè)有函數(shù)說明 void f(const int&);那么在調(diào)用該函數(shù)時,提供的參數(shù)既可以是變量,又可以是常量。F
類內(nèi)的public的成員函數(shù)能被外部訪問,不能被類內(nèi)部函數(shù)調(diào)用〔2.0分〕F
抽象類不能用于創(chuàng)立對象。T
抽象類可以用來直接創(chuàng)立對象。F
類內(nèi)的public成員函數(shù)不能訪問類里的private數(shù)據(jù)成員〔2.0分〕F
抽象類可以用來直接創(chuàng)立對象。〔2.0分〕F
實參與形參值傳遞是雙向的傳遞.〔2.0分〕F
C++提供的順序類型容器有向量(vector)、鏈表(list)、雙端隊列(deque)、集合(set)。F
49 / 49
- 溫馨提示:
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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。