




免費預覽已結(jié)束,剩余21頁可下載查看
下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
26判斷題1、對空指針不能用delete運算符。(錯誤) 2、對重載的函數(shù),要求函數(shù)類型相同但參數(shù)不同。(錯誤) 3、任何一個對象只能屬于一個具體的類。(正確) 4、用new運算符來創(chuàng)建對象時不會調(diào)用構(gòu)造函數(shù)。(錯誤) 5、對重載的函數(shù),要求參數(shù)不同或函數(shù)類型不同。(錯誤) 6、在公有繼承中,基類中的公有成員和私有成員在派生類中都是可見的。(錯誤) 7、析構(gòu)函數(shù)可以是虛函數(shù)。(正確) 8、無論什么方式的繼承,基類的私有成員都不能被派生類訪問。(正確) 9、要達到動態(tài)聯(lián)編的效果,基類和派生類的對應函數(shù)不僅名字相同,而且返回類型、參數(shù)個數(shù)和類型也必須相同。(正確) 10、如果派生類沒有實現(xiàn)虛函數(shù),那么它將使用他的基類的虛函數(shù)。(正確)11、構(gòu)造函數(shù)可以是虛函數(shù)。(錯誤)12、指向?qū)ο髷?shù)組的指針不一定必須指向數(shù)組的首指針。(正確)13、對象數(shù)組的元素可以是不同類的對象。(錯誤)14、對象數(shù)組可以賦初值又可以賦值。(錯誤)15、一個類的構(gòu)造函數(shù)可以不包含對其子對象的初始化。(錯誤)16、在C+中,既允許單繼承,又允許多繼承。(正確)17、派生類從基類派生出來,它不能生成新的派生類。(錯誤)18、派生類的繼承方式只有2種:公有繼承和私有繼承。(錯誤)19、在公有繼承中,基類的成員在派生類中都可以直接使用。(錯誤)20、在單繼承中,派生類中對基類成員的訪問也會出現(xiàn)二義性。(錯誤)21、解決多繼承下二義性問題的方法之一是使用作用域運算符。(正確)22、作用域運算符(:)只能用來限定成員函數(shù)所屬的類。(錯誤)注:還限制成員變量所屬的類。23、析構(gòu)函數(shù)是一種函數(shù)體為空的成員函數(shù)。(錯誤)24、構(gòu)造函數(shù)和析構(gòu)函數(shù)都不能重載。(錯誤)注:構(gòu)造函數(shù)可以重載,析構(gòu)函數(shù)不可以重載(因為析構(gòu)函數(shù)無參數(shù),不可能進行參數(shù)區(qū)分)。25、說明或定義對象時,類名前面不需要加class關(guān)鍵字。(正確)26、對象成員的表示與結(jié)構(gòu)變量成員表示相同,使用運算符或-。(正確)27.所謂私有成員是指只有類中所提供的成員函數(shù)才能直接使用它們,任何類以外的函數(shù)對它們的訪問都是非法的。(錯誤)注:私有成員還可以被友元訪問。28、某類中的友元類的所有成員函數(shù)可以存取或修改該類中的私有成員。(正確)29、可以在類的構(gòu)造函數(shù)中對靜態(tài)數(shù)據(jù)成員進行初始化。(錯誤)注:靜態(tài)數(shù)據(jù)成員屬于類而不管是否存在該類的對象,只有創(chuàng)建對象才會調(diào)用構(gòu)造函數(shù),所以靜態(tài)成員不應該在構(gòu)造函數(shù)中初始。30、如果一個成員函數(shù)只存取一個類的靜態(tài)數(shù)據(jù)成員,則可將該成員函數(shù)說明為靜態(tài)成員函數(shù)。(正確)注:一般情況,靜態(tài)成員函數(shù)不能訪問類的非靜態(tài)成員;非靜態(tài)成員函數(shù)可訪問類任何成員。31、使用關(guān)鍵字class定義的類中缺省的訪問權(quán)限是私有(private)的。(正確)32、已知:m是類A的對象,n是類A的公有數(shù)據(jù)成員,p是指向類A中n成員的指針。下述兩種表示是等價的:m.n和m.*p (正確)33、指向?qū)ο蟮闹羔樑c對象都可以作函數(shù)參數(shù),但是使用前者比后者好些。(正確)34、對象引用作函數(shù)參數(shù)比用對象指針更方便些。(正確)注:不需要間接訪問35、對象數(shù)組的元素可以是不同類的對象。(錯誤)36、對象數(shù)組既可以賦初值又可以賦值。(正確)37、指向?qū)ο髷?shù)組的指針不一定必須指向數(shù)組的首元素。(正確)注:指針可以移動。38、一維對象指針數(shù)組的每個元素應該是某個類的對象的地址值。(正確) 39、const char* p說明了p是指向字符串的常量指針。(錯誤)注:p是指向字符串常量的指針-正確。40、一個類的構(gòu)造函數(shù)中可以不包含對其子對象的初始化。(正確)注:形式上可以,但本質(zhì)會調(diào)用缺省構(gòu)造函數(shù)對子對象進行初始化。本題有二義性。41、轉(zhuǎn)換函數(shù)不是成員函數(shù),它是用來進行強制類型轉(zhuǎn)換的。(錯誤)42、指向?qū)ο蟮闹羔樅椭赶蝾惖某蓡T的指針在表示形式上是不相同的。(正確)43、C+語言中,既允許單繼承,又允許多繼承。(正確)44、派生類是從基類派生出來,它不能再生成新的派生類。(錯誤)45、派生類的繼承方式有兩種:公有繼承和私有繼承。(錯誤)/還有保護繼承45、在公有繼承中,基類中的公有成員和私有成員在派生類中都是可見的。(錯誤)注:基類中的公有成員和保護成員在派生類中都是可見的,基類私有成員在派生類中不可見。47、在公有繼承中,基類中只有公有成員對派生類對象是可見的。(正確)48、在私有繼承中,基類中只有公有成員對派生類是可見的。/保護成員也可見(錯誤)49、在私有繼承中,基類中所有成員對派生類的對象都是不可見的。(正確)注:基類成員public,protected成員都變成派生類private成員了。50、在保護繼承中,對于垂直訪問同于公有繼承,而對于水平訪問同于私有繼承。(正確)51、派生類是它的基類的組合。(錯誤)/不僅是組合,更重要的是擴充和完善52、構(gòu)造函數(shù)可以被繼承。(錯誤)53、析構(gòu)函數(shù)不能被繼承。(正確)注:構(gòu)造函數(shù)、析構(gòu)函數(shù)都不能繼承。54、子類型是不可逆的。(正確)55、只要是類M繼承了類N,就可以說類M是類N的子類型。(錯誤)/公有繼承56、如果A類型是B類型的子類型,則A類型必然適應于B類型。(正確)57、多繼承情況下,派生類的構(gòu)造函數(shù)的執(zhí)行順序取決于定義派生類時所指定的各基類的順序。(正確)58、單繼承情況下,派生類中對基類成員的訪問也會出現(xiàn)二義性。(錯誤)59、解決多繼承情況下出現(xiàn)的二義性的方法之一是使用成員名限定法。(正確)注:嚴格講“作用域限定”。60、虛基類是用來解決多繼承中公共基類在派生類中只產(chǎn)生一個基類子對象的問題。(錯誤)注:“多個”61、函數(shù)的參數(shù)個數(shù)和類型都相同,只是返回值不同,這不是重載函數(shù)。(正確)62、重載函數(shù)可以帶有缺省值參數(shù),但是要注意二義性。(正確)63、多數(shù)運算符可以重載,個別運算符不能重載,運算符重載是通過函數(shù)定義實現(xiàn)的。(正確)64、對每個可重載的運算符來講,它既可以重載為友元函數(shù),又可以重載為成員函數(shù),還可以重載為非成員函數(shù)。(錯誤)/“可以重載為非成員函數(shù)”不確切。65、對單目運算符重載為友元函數(shù)時,說明一個形參;重載為成員函數(shù)時,不能顯式說明形參。(錯誤)注:前面描述對的。此題不全面,應該是“重載為成員函數(shù)時,除了后置+、-,不能顯式說明形參。本題一般理解也可以按上面描述,此題考試不扣分。66、重載運算符保持原運算符的優(yōu)先級和結(jié)合性不變。(正確)67、虛函數(shù)是用virtual關(guān)鍵字說明的成員函數(shù)。(正確)68、構(gòu)造函數(shù)說明為純虛函數(shù)是沒有意義的。(正確)69、抽象類是指一些沒有說明對象的類。(錯誤)/抽象類是指一些“不能”說明對象的類。70、動態(tài)聯(lián)編是在運行時選定調(diào)用的成員函數(shù)的。(正確)1. 重載流操作符 時,如果第一個參數(shù)的類型為ostream 和istream,那么這個重載函 數(shù)既可以用于標準輸入輸出流,也可以用于文件流上。 對,ostream 和istream是標準輸入輸出流、文件流、字符串流的基類 2. 在同一個類中,可以定義重載的成員函數(shù) void f(int);和virtual void f(int); 。 錯,這屬于重復定義 3. 抽象類不會產(chǎn)生實例,所以不需要有構(gòu)造函數(shù)。 錯,被派生時需要它的構(gòu)造函數(shù) 4. 類A有一個非靜態(tài)的成員函數(shù)f,其函數(shù)原型是:void A:f( ) const,則該函數(shù)被調(diào)用時, 一定是通過類A或類A的某后裔類的一個用const修飾符說明的常量對象調(diào)用的。 錯,常函數(shù)可以由變量對象或常量對象調(diào)用 5. 異常必須在其產(chǎn)生的當前函數(shù)中捕獲,而不能在外層函數(shù)中捕獲該異常。 錯,可以在外層捕獲,并且這是最常見的用法 6. 只要程序中沒有A a1 = a2; 和A a1(a2); 形式的代碼,類A的拷貝構(gòu)造函數(shù)就不會被調(diào) 用。 錯,參數(shù)傳遞或函數(shù)返回時也調(diào)用拷貝構(gòu)造函數(shù) 7. 在protected繼承方式下,派生類對象的指針不能直接轉(zhuǎn)換成指向基類對象的指針。 對,否則基類中的公有成員由不可見變?yōu)榭梢?,?quán)限被放大 8. 若靜態(tài)成員函數(shù)中調(diào)用了一個函數(shù)f,那么f 一定不是虛函數(shù)。 對,靜態(tài)成員函數(shù)不能是虛函數(shù),因為虛函數(shù)入口需要在保存在對象中的虛函數(shù) 表中,而靜態(tài)成員函數(shù)不屬于對象。 9. 若要實例化一個含有引用型數(shù)據(jù)成員的類,那么只能使用構(gòu)造函數(shù)初始化列表來初始化該 數(shù)據(jù)成員。 對,沒有別的辦法 10. 構(gòu)造函數(shù)的函數(shù)體中,不能使用return語句;但在實現(xiàn)該類的自動類型轉(zhuǎn)化函數(shù)時,必須 有return 語句。 對1、C+中標識符內(nèi)的大小寫字母是沒有區(qū)別的。 (F)2、C+是一種以編譯方式實現(xiàn)的高級語言。 (T)3、在公有繼承中,基類中的公有成員和私有成員在派生類中都是可見的。 (F)4、在私有繼承中,基類中所有成員對派生類都是不可見的。 (F)5、返回值類型、參數(shù)個數(shù)和類型都相同的函數(shù)也可以重載。 (F)6、使用關(guān)鍵字class定義的類中缺省的訪問權(quán)限是私有(private)的。 (T)7、類的私有成員只能被類中的成員函數(shù)訪問,任何類以外的函數(shù)對它們的訪問都是非法的。(F)8、C+中使用了新的注釋符(/),C語言中注釋符(/*/)不能在C+中使用。 (F)9、While循環(huán)語句的循環(huán)體至少執(zhí)行一次。 (F)10、引用就是某個變量的別名,對引用的操作,實質(zhì)上就是對被引用的變量的操作。 (T)11、類封裝了數(shù)據(jù)和操作。 ( T )12、在類的定義中,必須包含private、public、protected三種存取方式對應的部分。 ( F )13、類中的數(shù)據(jù)成員不能為指針類型。 ( F ) 14、析構(gòu)函數(shù)可以有形參。 (T )15、派生類至少有一個基類。 (T ) 16、在公有和保護繼承方式下,派生類的對象可以對基類的保護成員進行訪問。 ( T )17、全局函數(shù)和靜態(tài)成員函數(shù)也能聲明為虛函數(shù)。 (F )18、在一個類的對象空間里不包含靜態(tài)成員的空間。 ( T )19、友元本身就是類的成員。 ( T ) 20、運算符重載后,原運算符的優(yōu)先級和結(jié)合特性會改變。 ( F )21、一個類只能有一個對象。 ( F)22、在類中不能對所定義的數(shù)據(jù)成員進行初始化。 ( T )23、類的公有成員函數(shù)是類與外界的接口。 ( T ) 24、構(gòu)造函數(shù)沒有函數(shù)類型。 ( T )25、在派生類的構(gòu)造函數(shù)的初始化表中不能對包含基類的子對象初始化。 ( T )26、在公有和保護繼承方式下,派生類的成員可以對基類的保護成員進行訪問。 ( F )27、只有類的成員函數(shù)才能聲明為虛函數(shù)。 ( T )28、在一個類的對象空間里已經(jīng)包含了靜態(tài)成員的空間。 (F )29、C+不允許將構(gòu)造函數(shù)、析構(gòu)函數(shù)和虛函數(shù)聲明為友元函數(shù)。( T ) 30、運算符重載后,原運算符的優(yōu)先級和結(jié)合特性不會改變。 ( T )31.C+中使用了新的注釋符(/),C語言中注釋符(/*/)不能在C+中使用。 (F)32.數(shù)組賦初值時,初始值表中的數(shù)據(jù)項的數(shù)目可以大于或等于數(shù)組元素的個數(shù)。 (F)33.隱含的類型轉(zhuǎn)換都是保值映射,顯式的類型轉(zhuǎn)換都是非保值映射。 (F)34.宏定義命令是以分號結(jié)束的。 (F)35.While循環(huán)語句的循環(huán)體至少執(zhí)行一次。 (F)36.返回值類型、參數(shù)個數(shù)和類型都相同的函數(shù)也可以重載。 (F)37.函數(shù)形參的作用域是該函數(shù)的函數(shù)體。 (T)38.靜態(tài)類標識符在它的作用域之外是不存在的。 (F)39.對象成員的表示與結(jié)構(gòu)變量成員表示相同,使用運算符.或-。 (T)40.某類中的友元類的所有成員函數(shù)可以存取或修改該類中的私有成員。 (T)41.對象數(shù)組的元素可以是不同類的對象。 (T)42.const char *p說明了p是指向字符串的常量指針。 (F)43、引用就是某個變量的別名,對引用的操作,實質(zhì)上就是對被引用的變量的操作。(F)44、無論是私有繼承還是保護繼承中,基類中所有成員對派生類對象都是不可見的。(T)45、當break語句用在雙重循環(huán)的內(nèi)循環(huán)中時,它只能退出內(nèi)循環(huán)到外循環(huán)中去,而不能直出整個雙重循環(huán)。 (T)46、For循環(huán)是只有可以確定的循環(huán)次數(shù)時才可使用,否則不能用for循環(huán)。 (F)47、返回值類型、參數(shù)個數(shù)和參數(shù)類型都相同的函數(shù)也可以重載。 (F)48、通常的拷貝初始化函數(shù)的參數(shù)是某個對象的成員名或?qū)ο蟮囊妹?(T)49、友元函數(shù)是類的成員函數(shù),所以可以存取或修改該類中的私有成員。 (F)50、已知:類A中一個成員函數(shù)說明如下:void Set(A&a);其中A &a的含意是將a的地給變量Set。 (F)51、在語句const char *ptr中, ptr是指向字符串的常量指針。 (F)52、多繼承情況下,派生類的構(gòu)造函數(shù)的執(zhí)行順序取決于定義派生類時所指定的各基類的順序,而與派生類構(gòu)造函數(shù)中所定義的成員初始化列表的各項順序無關(guān)。 (T)53、在說明語句 int a(15),&b=a,*p=&a;中,b的值的*P的是不相等的。(F)54、已知:int a(5),b(10);表達式+a+b+有二義性。(F)55、在不同類型操作數(shù)組成的表達式中,其表達式的類型一定是最高類型double型。(F)56、break語句也可以用于if體內(nèi),它可退出if語句。(F)57、在一個被調(diào)用函數(shù)中,一個return語句可返回多個值給調(diào)用函數(shù)。(F)58、在傳值調(diào)用中,要求實參和形參的類型完全一致并且個數(shù)相等。(F)59、for循環(huán)中,循環(huán)變量的作用域是該循環(huán)的循環(huán)體內(nèi)。(F)60、所謂私有成員是指只有類中所提供的成員函數(shù)才能直接訪問它們,任何類以外的函數(shù)對它們的訪問都是非法的。(F)61、const char *p說明了p是指向字符串的常量指針。(F)62、私有繼承中,基類中所有成員對派生類的對象都是不可見的。(F)填空1、定義類的動態(tài)對象數(shù)組時,系統(tǒng)只能夠自動調(diào)用該類的 無參 構(gòu)造函數(shù)對其進行初始化。 2、在 C+ 程序設計中,建立繼承關(guān)系倒掛的樹應使用單一 ( 或單 )繼承。 3、表達式 coutend1 還可表示為 cout ” )。 10、派生類從一個或多個以前定義的該類的 基 類繼承數(shù)據(jù)和函數(shù)。11、在一個類中可以對一個操作符進行函數(shù)重載。12、在C+中有二種參數(shù)傳遞方式:傳值與傳引用。13、模板對處理數(shù)據(jù)的類型的要求不同可以分為兩種類型:函數(shù)模板與類模板。14、靜態(tài)聯(lián)編是在程序_ 編譯 時進行的,而動態(tài)聯(lián)編是在程序_ 運行 時進行的。15、在函數(shù)體之前加_const_關(guān)鍵字可以防止函數(shù)改變數(shù)據(jù)成員的值。16、一個const對象只能訪問_ const _成員函數(shù)。17、派生類的主要用途是可以定義其基類中成員函數(shù)。18、當建立_對象時_,程序自動調(diào)用該類的構(gòu)造函數(shù)。19、使用指向?qū)ο蟮闹羔榿順俗R類的成員,則使用的運算符是_-_。20、拷貝初始化構(gòu)造函數(shù)使用 一個已知對象 來初始化創(chuàng)建中的對象。21、 使用const語句定義一個標識符常量時,則必須對它同時進行初始化。22、設px是指向一個類動態(tài)對象的指針變量,則執(zhí)行”delete px;”語句時,將自動調(diào)用該類的析構(gòu)函數(shù)。23、若需要把一個函數(shù)”void F();”定義為一個類AB的友元函數(shù),則應在類AB的定義中加入一條語句:friend void F(); 24、若要在程序文件中進行標準輸入輸出操作,則必須在開始的#include命令中使用iostream.h 頭文件。25、在C+中,用數(shù)組、指針、和引用作為函數(shù)參數(shù),能夠?qū)?shù)值帶回。26、在C+中,雖然友元提供了類之間數(shù)據(jù)進行訪問的一種方式,但它破壞了面向?qū)ο蟪绦蛟O計的封裝特性。27、在C+中,構(gòu)造派生類對象時,總是先從基類的初始化開始的。28、拷貝構(gòu)造函數(shù)是在用一個對象初始化另一個對象時被調(diào)用,系統(tǒng)缺省的拷貝構(gòu)造函數(shù)的工作方法是各個成員的復制。29、類是用戶定義的類型,具有類類型的變量稱作 對象。30、在C+中,類定義一般用class關(guān)鍵字,不過用struct關(guān)鍵字也可以定義類,它們定義類的區(qū)別在于用class定義時成員默認為private, 用struct定義時成員默認為public。31、靜態(tài)的成員函數(shù)沒有隱含的this指針,所以,它們只能訪問靜態(tài)的數(shù)據(jù)成員。32、在面向?qū)ο蟮某绦蛟O計中,通過類實現(xiàn)數(shù)據(jù)隱藏;通過繼承實現(xiàn)代碼的復用。33、在下面的程序段中,語句const int* c=&a;和語句int* const d=&b;的含義分別是定義一個指向禁止修改的實體的指針、定義一個指針常量(不可修改的指針)。 const int a=78; int b=28; const int* c=&a; int* const d=&b;34、用new申請有10個數(shù)組元素的指針str,假定數(shù)組元素是字符型數(shù)據(jù),該C+語句為 char *str=new char10。35、在C+中構(gòu)造一個對象時,其數(shù)據(jù)成員在構(gòu)造函數(shù)中初始化。對于內(nèi)嵌的子對象、基類成員 、靜態(tài)數(shù)據(jù)成員需要在構(gòu)造函數(shù)的成員初始化列表中初始化。36、在類的定義中,保護數(shù)據(jù)成員具有雙重作用:對于其派生類而言,類似于public 成員 ;而對于其外部的程序而言,類似于private 成員。37、C+中,對象保存在內(nèi)存中,棧內(nèi)存是自動分配和釋放的,而堆內(nèi)存需要用戶自己申請和釋放。38、在C+函數(shù)中,可用return語句帶回一個值。如果有多個返回值,可用指針、引用帶回。39、拷貝構(gòu)造函數(shù)使用對象引用作為參數(shù)初始化創(chuàng)建中的對象。40、用new申請某一個類的動態(tài)對象數(shù)組時,在該類中必須能夠匹配到缺省的構(gòu)造函數(shù),否則應用程序會產(chǎn)生一個編譯錯誤。 41、 靜態(tài)數(shù)據(jù)成員在類外進行初始化,且靜態(tài)數(shù)據(jù)成員的一個拷貝被類的所有對象使用。 42、面向?qū)ο蟮某绦蛟O計有四大特征,它們是抽象、封裝、繼承 、多態(tài)性。 43、在C+中,定義重載函數(shù)時,應至少使重載函數(shù)的參數(shù)個數(shù)或參數(shù)類型不同。 43、動態(tài)聯(lián)編要滿足兩個條件,它們是使用基類指針、虛函數(shù)。 44、在C+類中,有一種不能定義對象的類,這樣的類只能被繼承,稱之為抽象類,定義該類至少具有一個純虛函數(shù)。45、在C+類中,const關(guān)鍵字可以修飾對象和成員函數(shù),const對象不能被修改,只有const成員函數(shù)才能操作const對象。 46、舉出C+中兩種用戶自定義的數(shù)據(jù)類型:結(jié)構(gòu)體 、類。 47、面向?qū)ο蟪绦蛟O計的繼承機制提供了重復利用程序資源的一種途徑。 48、對虛函數(shù)使用基類類型的指針或引用調(diào)用,系統(tǒng)使用動態(tài)聯(lián)編;而使用對象調(diào)用時,系統(tǒng)使用靜態(tài)聯(lián)編。 49、允許訪問一個類的所有對象的私有成員、公有成員和保護成員的函數(shù)是該類的成員函數(shù)和友員函數(shù)。 50、執(zhí)行完C+程序中的三條語句: int a,b,*c=&a; int * &p = c; p = &b; 后c指向 b 。 51、在類定義中,類說明以關(guān)鍵字class開始,其后跟類名,它必須是一個有效的C+標識符。類說明的內(nèi)容用花括號括起來,稱為類的定義。 52、實現(xiàn)類對象初始化任務的是該類的構(gòu)造函數(shù)。 53、初始化類模板時,相對于它的每個參數(shù)要提供類型參數(shù)。 54、從一個抽象類派生的類必須提供純虛函數(shù)的實現(xiàn)代碼,或者在該派生類中將它再說明為純虛函數(shù)。 55、. 將關(guān)鍵字 const 寫在函數(shù)頭之后,函數(shù)體之前,說明該函數(shù)是一個 const 成員函數(shù)。此時 const 不是指定函數(shù)的返回值,而是修飾 this 指針。 56、一個抽象類的派生類可以實例化的必要條件是實現(xiàn)了所有的純虛函數(shù) 。 57、在 C+ 中,虛函數(shù)幫助實現(xiàn)了類的 多態(tài) 性,而虛基類解決了二義性。 58、通過 C+ 語言中類的 繼承,可以擴充和完善已有類以適應新的需求。 59、為了在對象生存期結(jié)束時釋放其指針成員所指向的動態(tài)存儲空間,通常需要為該類定義 析造函數(shù)。 60、在已經(jīng)定義了整型指針 ip 后,為了得到一個包括 10 個整數(shù)的數(shù)組并由 ip 所指向,應使用語句 ip=new int 10;。 1 在C+中,函數(shù)的參數(shù)有兩種傳遞方式,它們是值傳遞和 地址或指針或引用傳遞。2 當一個成員函數(shù)被調(diào)用時,該成員函數(shù)的 this指針 指向調(diào)用它的對象。3在基類和派生類中,派生類可以定義其基類中不具備的數(shù)據(jù)和操作。對兩個有相同名字的數(shù)據(jù)成員進行訪問時,如果沒有 作用域分隔符限定時 ,對此數(shù)據(jù)成員的訪問將出現(xiàn)歧義。4 拷貝構(gòu)造函數(shù)使用 引用 作為參數(shù)初始化創(chuàng)建中的對象。5 在公有繼承的情況下,基類數(shù)據(jù)成員在派生類中的訪問權(quán)限 保持不變 。6 描述命題A小于B或小于C的表達式為 AB|Ac&b=c的值是 0 。(以下每小題2分,共20分)11 面向?qū)ο蟮某绦蛟O計有四大特征,它們是抽象、封裝、 繼承 、 多態(tài) 。12 在Visual C+中,定義重載函數(shù)時,應至少使重載函數(shù)的參數(shù)個數(shù)或參數(shù)類型 不同 ;在基類和派生類中,成員函數(shù)的覆蓋是指 派生類成員函數(shù)與在基類被覆蓋的成員函數(shù)名、參數(shù)個數(shù)、參數(shù)類型和返回值類型均相同 。13構(gòu)造函數(shù)與析構(gòu)函數(shù)除功能不同外,在定義形式上,它們的區(qū)別還包括構(gòu)造函數(shù)名與類名相同,而析構(gòu)函數(shù)名是在類名前加一個、 析構(gòu)函數(shù)沒有參數(shù) 、析構(gòu)函數(shù)可以定義為虛函數(shù) 。14 動態(tài)聯(lián)編要滿足兩個條件,它們是 被調(diào)用的成員函數(shù)是虛函數(shù) 、用指針或引用調(diào)用虛函數(shù) 。15在C+類中,有一種不能定義對象的類,這樣的類只能被繼承,稱之為 抽象類 ,定義該類至少具有一個 純虛函數(shù) 。16 在C+類中,const關(guān)鍵字可以修飾對象和成員函數(shù),const對象不能 被修改 ,const成員函數(shù)不能 修改類數(shù)據(jù)成員 。17 舉出C+中兩種用戶自定義的數(shù)據(jù)類型: 類 、 枚舉 。18 C+中沒有字符串類型,字符串是通過 字符數(shù)組 來表示的,每一個字符串都有一個結(jié)尾字符 0 。19 C+中沒有輸入輸出語句,輸入輸出是通過 輸入輸出庫 實現(xiàn)的,寫出一條打印整型變量n的輸出語句:coutn;20 舉出C+中兩種代碼復用的方式: 繼承 、復用 。 1. C+語言的頭文件與源程序文件擴展名分別是(.h )和( .cpp )。 2. 在C+程序中使用基本輸入與輸出流時需要包含的頭文件名是( iostr eam )。 3. 在C+語言中,惟一的一個三目運算運算符是( ?: )。 4. C+中當一個函數(shù)無返回值時,則函數(shù)的類型是(void )。5. 一個類中可以有(多)個構(gòu)造函數(shù),只能有( 一 )個析構(gòu)函數(shù)。6.一般情況下,按照面向?qū)ο蟮囊?把類中的數(shù)據(jù)成員(屬性)定義為( 私有 )權(quán)限, 而把成員函數(shù)(方法)定義為(公有 )權(quán)限.7.在定義類的對象時,C+程序?qū)⒆詣诱{(diào)用該對象的( 構(gòu)造 )函數(shù)初始化對象自身.在撤銷類的對象時,C+程序?qū)⒆詣诱{(diào)用該對象的( 折構(gòu) ) 函數(shù).8.類繼承中,缺省的繼承方式是( 私有繼承 ).9在C+語言中,用轉(zhuǎn)義字符序列( n )或操縱符( endl )表示輸出一個換行符。10表達式a=al表示成增量表達式為( +a )。11當不需要函數(shù)返回任何值時,則應把該函數(shù)類型定義為( void )。12用于輸出表達式值的標準輸出流對象是( cout)。,用于從鍵盤上為變量輸人值的標準輸人流對象是(cin )。13、變量分為全局和局部兩種,(全局變量默認初始化為0 )。變量沒有賦初值時,其值是不確定的。14、假定類AB中有一個公用屬性的靜態(tài)數(shù)據(jù)成員bb,在類外不通過對象名訪問該成員bb的寫法為( AB::bb )。15、類的成員分為數(shù)據(jù)成員和成員函數(shù)。16、一個類和對象的關(guān)系,正如基本數(shù)據(jù)類型與該類型的變量一樣,如int x;。17、對一個類中的數(shù)據(jù)成員的初始化可以通過構(gòu)造函數(shù)中的賦值實現(xiàn),也可以通過構(gòu)造函數(shù)中的初始化列表實現(xiàn)。18、類有兩種用法:一種是定義對象,即生成類的對象;另一種是通過派生,派生出新的類。19、C+語言提供的多態(tài)機制允許一個派生類繼承多個基類,即使這些基類是相互無關(guān)的。20、聲明虛函數(shù)的方法是在基類中的成員函數(shù)原型前加上關(guān)鍵字virtual。21、如果一個類中有一個或多個純虛函數(shù),則這個類稱為虛基類。22、靜態(tài)數(shù)據(jù)成員在定義或說明時,前面要加上關(guān)鍵字static。23、如果成員函數(shù)不需要訪問類的非靜態(tài)成員,則可以把它聲明為靜態(tài)成員函數(shù)。24、友元可以是全局函數(shù),也可以是其他類的成員函數(shù)。25、若需要把一個函數(shù)“void fun();”定義為一個類A的友元函數(shù),則應在類A的定義中加入一條語句:friend void fun();。26、運算符函數(shù)中的關(guān)鍵字是operator,它和運算符一起組成該運算符函數(shù)的函數(shù)名。27、類中運算符重載一般采用兩種形式:成員函數(shù)和友元函數(shù)。28、面向?qū)ο蟪绦蛟O計的3大機制為:封裝性、繼承性和多態(tài)性。2、類的訪問權(quán)限有public、private和protected三種。29、構(gòu)造函數(shù)是對象被創(chuàng)建時自動執(zhí)行,對象消失時自動執(zhí)行的成員函數(shù)稱為析構(gòu)函數(shù)。30、如果類A繼承了類B,則類A稱為基類,類B稱為派生類。31、如果一個特定的類型S當且僅當它提供了類型T的行為時,則稱類型S是類型T的子類型。32、在類定義中,將=0置于虛函數(shù)的函數(shù)原型的末尾可以聲明該函數(shù)為純虛函數(shù)。33、類的靜態(tài)成員分為靜態(tài)數(shù)據(jù)成員和靜態(tài)成員函數(shù)。34、友元函數(shù)的聲明可以放在類的私有部分,也可以放在類的共有部分,它們是沒有區(qū)別的。35、如果說類B是類A的友元類,則類B的所有成員函數(shù)都是類A的成員函數(shù)。36、設a和b是兩個整型變量,我們用a+b的形式求這兩個變量的和;設c和d為浮點型變量,我們用c+d的形式求這兩個變量的和。顯然運算符“+”具有不同的用途,這是運算符重載的例子。37、對于雙目運算符,若重載為類的成員函數(shù),有1個參數(shù);若重載為友元函數(shù),則有2個參數(shù)。38、 當建立_一個新的對象_,程序自動調(diào)用該類的構(gòu)造函數(shù)。39、 在C+中有二種參數(shù)傳遞方式:_傳值_ 和_引用_ 。40、 模板對處理數(shù)據(jù)的類型的要求不同可以分為兩種類型:_函數(shù)模板_ 和 _ 類模板_。41、 異常是通過_檢查(try)_ 、_拋出(throw)_和_捕捉(catch)_ 來實現(xiàn)的。42、 虛函數(shù)實現(xiàn)了C+的_多態(tài)_ 機制,類實現(xiàn)了C+的_封裝_ 機制。43、 面向?qū)ο蟪绦蛟O計的_繼承_機制提供了重復利用程序資源的一種途徑。44、C+語言程序設計的三種基本結(jié)構(gòu)是:_順序結(jié)構(gòu)_ 、 _選擇結(jié)構(gòu)_ 、 _循環(huán)結(jié)構(gòu)_ 。45、為了避免嵌套的條件語句if-else的二義性,C+語言規(guī)定else與_if _配對使用。46、定義函數(shù)時,在函數(shù)的類型前加上修飾詞 _ inline _,指明將該函數(shù)定義為內(nèi)聯(lián)函數(shù)。47、有說明語句:*p;則*p+運算首先訪問 _*p_,然后使_p_ 的值加1。48、執(zhí)行int *p=new int 操作,可以得到一個動態(tài)分配整型對象的_指針_。49、有說明語句:int *p;則(*p)+運算首先訪問 _*p_,然后使 _*p_的值加1。50 C+目標程序經(jīng)_編譯鏈接_后生成擴展名為exe的可執(zhí)行程序文件。51 16位計算機中整型占_2_個字節(jié)存儲空間。52 要在屏幕上顯示Hello,world!應執(zhí)行語句cout=0|x=0) coutabcd;else coutwxyz;屏幕上顯示的是_abcd_。56 設一維整型數(shù)組data已進行了初始化,則其元素個數(shù)可由操作符sizeof通過表達式_ sizeof(data) / sizeof(int) _計算出來。57 若一全局變量只允許本程序文件中的函數(shù)使用,則定義它時應加上修飾符_ static _。58 設有int w34;,pw是與數(shù)組名w等價的數(shù)組指針,則pw應初始化為_ int*4 pw = w; _。59.要使引用pr代表變量char * p;,則pr應初始化為_ char*& pr = p; _。60在C+中封裝性、繼承性和_多態(tài)性 61假設int a=1,b2;則表達式a+-b的值為 _2_。62下面的程序?qū)崿F(xiàn)輸出x,y,z三個數(shù)中的最大值,請?zhí)钊胝_的內(nèi)容。#includevoid main() int x=5,y=8,z=9, u, v; if_(xu)_ u=x;else u=y;if_(uv)_ v=u;else v=z;cout”v=”v _。65C+語言支持的兩種多態(tài)性分別是編譯時的多態(tài)性和 _運行時_的多態(tài)性。66設有如下程序結(jié)構(gòu):class Box ;void main()Box A,B,C; 該程序運行時調(diào)用_3_次構(gòu)造函數(shù);調(diào)用 _3_次析構(gòu)函數(shù)。67目前,有兩種重要的程序設計方法,分別是:_面向過程_和_面向?qū)ο骭。68 C+語言提供的基本控制結(jié)構(gòu)可以分為3種類型:順序結(jié)構(gòu)、_分支_ 和循環(huán)結(jié)構(gòu)。69函數(shù)的調(diào)用主要分為傳值調(diào)用和_引用調(diào)用_調(diào)用。前者的特點是_不能改變傳入變量的值 _。70函數(shù)重載時要求同名函數(shù)的_參數(shù)個數(shù)_或_參數(shù)類型_不同,否則無法確定是哪個函數(shù)。71靜態(tài)數(shù)據(jù)成員是類的所有對象中的_共享_成員,而非靜態(tài)數(shù)據(jù)成員是屬于_一個具體_對象的。72 設A為test類的對象且賦有初值,則語句test B(A); 表示_將對象A復制給對象B _。73.面向?qū)ο蟪绦蛟O計方法中的每個對象都具有_屬性_和_方法_兩方面的特征。74.“類”指的是_對象的類型,代表了某一批對象的共性和特征_。75.構(gòu)造數(shù)據(jù)類型,包括數(shù)組、_指針_、_結(jié)構(gòu)體和共用體_、_枚舉_和類等。76.C+中數(shù)據(jù)類型標識符Signed Char,其字節(jié)數(shù)為_1_,范圍是_-128到127_。77.在函數(shù)體內(nèi)部定義的變量稱為_局部變量_。在所有函數(shù)體外部定義的變量稱為_全局變量_。78.有一數(shù)學表達式為2/3(f-32),要寫成對應的C+的表達式時,正確地寫法應寫_2.0/3.0*(f-32)_。79.類的靜態(tài)成員是_的所有對象中共享_的成員,不是_某個對象_的成員,靜態(tài)成員在_類的聲明中_進行引用性說明,在_其文件作用域的其他地方_進行定義性說明。80.使用傳統(tǒng)的結(jié)構(gòu)化程序設計方法設計程序的步驟是_自頂向下_、_逐步細化_、_模塊化設計_。81.“封裝”指的是_將有關(guān)的數(shù)據(jù)和操作代碼封裝在一個對象中,形成一個基本單位,各個對象之間相互獨立,互不干擾,且將對象中某些部分對外隱藏_。82.可以讓新類繼承已定義的類的_數(shù)據(jù)成員_和_成員函數(shù)_,這個新類稱為_繼承_,原來的類稱為_基類_。新類可以從一個類中派生,這叫_單繼承_,也可以從多個類中派生,稱為_多重繼承_。83.指針類型變量用于存儲_另一變量的地址_,在內(nèi)存中它占有_一個_存儲單元。84.類有三種繼承方式,分別是:_公有繼承_、_保護繼承_、_私有繼承_。1. C+的流庫預定義了4個流,它們是cin、cout、clog和_。答案:(P193)cerr解析cin、cout、clog和cerr分別用于標準輸入、輸出、標準錯誤流(緩沖)和標準錯誤流(非緩沖)。2. 每個對象都是所屬類的一個_。答案:實例解析類是對象的抽象,對象是類的一個實例。3. 在已經(jīng)定義了整型指針ip后,為了得到一個包括10個整數(shù)的數(shù)組并由ip所指向,應使用語句_。答案:int *ip=new int10;解析new用來動態(tài)開辟空間。常用來產(chǎn)生動態(tài)數(shù)組及對象構(gòu)造函數(shù)。4. 函數(shù)模板中緊隨template之后尖括號內(nèi)的類型參數(shù)都要冠以保留字_。答案:class解析類模板的使用。template ,也可以引入多參數(shù)的如:template 5. 定義類的動態(tài)對象數(shù)組時,系統(tǒng)只能夠自動調(diào)用該類的_構(gòu)造函數(shù)對其進行初始化。答案:無參解析使用new創(chuàng)建對象數(shù)組,調(diào)用無參構(gòu)造函數(shù)。6. 表達式cout解析指針使用成員有兩種方法:“-”指向運算符和“.”成員訪問運算符。8. 假如一個類的名稱為MyClass,使用這個類的一個對象初始化該類的另一個對象時,可以調(diào)用_構(gòu)造函數(shù)來完成此功能。答案:復制或拷貝復制或拷貝構(gòu)造函數(shù)就是用對象初始化新的對象。9. 對賦值運算符進行重載時,應聲明為_函數(shù)。答案:(P183)類成員解析運算符重載的方法有友元或者成員函數(shù)兩種途徑,但是賦值運算符只能使用成員函數(shù)的方法來實現(xiàn)。10. 如果要把A類成員函數(shù)f()且返回值為void聲明為類B的友元函數(shù),則應在類B的定義中加入的語句_。答案:(P109)friend void A:f();解析成員函數(shù)作為另一個類的友元函數(shù),格式為:friend 返回類型 類名:函數(shù)(形參)。11. 下列程序段的輸出結(jié)果是_。for(i=0,j=10,k=0;i=j;i+,j-=3,k=i+j);coutk;答案:4解析for循環(huán)結(jié)構(gòu),三個表達式的作用,初始化、循環(huán)判斷條件和循環(huán)變量變化。循環(huán)執(zhí)行了三次,k的作用是計算i、j的和。12. String 類的_方法返回查找到的字符串在主串的位置。答案:(P40)find解析string類對象方法的find,查不到字符串,則返回-1。13. int n=0;while(n=1)n+;while循環(huán)執(zhí)行次數(shù)是_。答案:無限次解析是賦值運算符,不是關(guān)系運算符,且不等0,所以死循環(huán)。14. 控制格式輸入輸出的操作中,函數(shù)_是用來設置填充字符。要求給出函數(shù)名和參數(shù)類型答案:setfill(char)解析格式控制方法的使用,如setw,setfill等等。15. C+語言支持的兩種多態(tài)性分別是編譯時的多態(tài)性和_的多態(tài)性。答案:運行時解析多態(tài)性包括靜態(tài)的(編譯時)多態(tài)性和動態(tài)的(運行時)多態(tài)性。16. 設函數(shù)sum是由函數(shù)模板實現(xiàn)的,并且sum(3,6)和sum(4.6,8)都是正確的函數(shù)調(diào)用,則函數(shù)模板具有_個類型參數(shù)。答案:217. 執(zhí)行下列代碼string str(HelloC+);coutstr.substr(5,3);程序的輸出結(jié)果是_。答案:C+解析substr取子字符串,第1個參數(shù)表示要截取子串在字符串中的位置,第2個表示取多少個字符。18. 在面向?qū)ο蟮某绦蛟O計中,將一組對象的共同特性抽象出來形成_。答案:類解析類是相似特征的對象的抽象,對象是類的一個實例。19. 定義類動態(tài)對象數(shù)組時,元素只能靠自動調(diào)用該類的_來進行初始化。答案:無參構(gòu)造函數(shù)解析使用new 創(chuàng)建動態(tài)對象數(shù)組,不能有參數(shù),所以只能調(diào)用無參的構(gòu)造函數(shù),初始化對象20. 已知有20個元素int類型向量V1,若用V1初始化為V2向量,語句是_。答案:ector V2(V1);解析采用向量初始化另一個向量的形式:vector name1(name);1. 假設i
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 預防拐騙安全課件
- 《成本與管理會計(英文)》課件-3.1Cost flows in manufacturing business
- 音樂課介紹課件
- 高效節(jié)能電機項目招投標方案(模板)
- 2025年果酒及配制酒項目發(fā)展計劃
- 2025年鋼結(jié)構(gòu)用H型鋼項目發(fā)展計劃
- 2025年太陽能電池用多晶硅、非晶硅項目合作計劃書
- 2025年互聯(lián)網(wǎng)醫(yī)療平臺在線問診服務質(zhì)量優(yōu)化報告
- 2025年工業(yè)互聯(lián)網(wǎng)平臺漏洞掃描技術(shù)在物聯(lián)網(wǎng)安全防護中的應用研究
- 時尚零售行業(yè)快時尚模式下的品牌合作與聯(lián)合營銷報告
- 文學概論考試要點試題及答案
- 2024–2025年中國數(shù)據(jù)標注產(chǎn)業(yè)深度分析報告
- 學校粉刷門窗協(xié)議書
- 2025-2031年中國材料預浸料行業(yè)市場深度研究及發(fā)展趨勢預測報告
- 法人更換免責協(xié)議書
- 2025-2030年中國鄉(xiāng)村振興戰(zhàn)略行業(yè)市場發(fā)展分析及前景趨勢與投融資發(fā)展研究報告
- 小球彈簧(蹦極、蹦床)模型-高考物理一輪復習模型及解題技巧(解析版)
- 氫能分解與轉(zhuǎn)化技術(shù)創(chuàng)新-全面剖析
- 2025-2030天文望遠鏡行業(yè)市場深度調(diào)研及發(fā)展趨勢與投資戰(zhàn)略研究報告
- 2025年小學教師資格考試《綜合素質(zhì)》邏輯推理能力測評題庫(附答案)
- 車輛傷害培訓教育課件
評論
0/150
提交評論