南開22秋學(xué)期(全層次1809-2103)《面向?qū)ο蟪绦蛟O(shè)計》在線作業(yè)【資料答案】

可做奧鵬全部院校在線離線作業(yè)畢業(yè)論文QQ:3230981406 微信:aopopenfd777

發(fā)布時間:2023/2/3 21:05:56來源:admin瀏覽: 0 次

22秋學(xué)期(高起本1709-1803、全層次1809-2103)《面向?qū)ο蟪绦蛟O(shè)計》在線作業(yè)-00001

試卷總分:100  得分:100

一、單選題 (共 35 道試題,共 70 分)

1.對虛函數(shù)的調(diào)用()。

A.一定使用動態(tài)聯(lián)編

B.一定使用靜態(tài)聯(lián)編

C.必須使用動態(tài)聯(lián)編

D.不一定使用動態(tài)聯(lián)編


2.下列虛基類的聲明中正確的是( )。

A.class virtual B:public A

B.virtual class B:public

C.class B:public A virtual

D.class B: virtual public A


3.已知類X中的一個成員函數(shù)說明如下: Void Set(X &a); 其中,X &a的含義是( )。

A.a是指向X類對象的指針,用來作為Set()的形參

B.將a的地址傳遞給Set()函數(shù)

C.a是X類對象的引用,用來做為Set()的形參

D.以上都不對


4.下面對靜態(tài)數(shù)據(jù)成員的描述中,正確的是( )。

A.靜態(tài)數(shù)據(jù)成員是類的所有對象共享的數(shù)據(jù)

B.類的每個對象都有自己的靜態(tài)數(shù)據(jù)成員

C.類的不同對象有不同的靜態(tài)數(shù)據(jù)成員值

D.靜態(tài)數(shù)據(jù)成員不能通過類的對象訪問


5.下列程序中說明的公有成員是( ) class Location { int X; public: void init(int initX,int initY); private: int Y; public: int GetX(); int GetY(); };

A.X

B.init(int initX,int initY)

C.GetX(),GetY()

D.B和C都是


6.在C++中,通過()的機制可以對原有的類進行擴充和完善以適應(yīng)新的需要。

A.繼承

B.封裝

C.多態(tài)

D.重載


7.要求打開文件 d:\file.dat,可寫入數(shù)據(jù),正確的語句是( )。

A.ifstream infile("d:\file.dat", ios::in);

B.ifstream infile("d:\\file.dat", ios::in);

C.ofstream infile("d:\file.dat", ios::out);

D.fstream infile("d:\\file.dat", ios::in| ios::out);


8.下列程序段中具有相同值的是( ) class Base {int b;}; class Base1:virtual public base{int b1;}; class Base2:virtual public base{int b2;}; class derived:public base 1,public base 2{int b3;}; derived d;

A.b與d.base1::b

B.base1::b與 d.base1::b1

C.b與 d. b3

D.base2::b與 d.base2::b2


9.當一個派生類私有繼承一個基類時,基類中的所有公有成員和保護成員成為派生類的( )。

A.public成員

B.private成員

C.protected成員

D.友元


10.假定X為一個類,執(zhí)行X a[3],*p[2];語句時會自動調(diào)用該類的構(gòu)造函數(shù)( )次。

A.2

B.3

C.4

D.5


11.下列關(guān)于構(gòu)造函數(shù)調(diào)用順序的描述中,正確的是()。

A.創(chuàng)建派生類對象時,先調(diào)用基類的構(gòu)造函數(shù),后調(diào)用派生類的構(gòu)造函數(shù)

B.創(chuàng)建基類對象時,先調(diào)用基類的構(gòu)造函數(shù),后調(diào)用派生類的構(gòu)造函數(shù)

C.創(chuàng)建派生類對象時,先調(diào)用派生類的構(gòu)造函數(shù),后調(diào)用基類的構(gòu)造函數(shù)

D.創(chuàng)建基類對象時,先調(diào)用派生類的構(gòu)造函數(shù),后調(diào)用基類的構(gòu)造函數(shù)


12.若類中有指針成員變量,則應(yīng)編寫(),使得在對象銷毀時能夠自動調(diào)用該函數(shù)釋放指針成員變量所指向的內(nèi)存空間。

A.友元函數(shù)

B.虛函數(shù)

C.構(gòu)造函數(shù)

D.析構(gòu)函數(shù)


13.關(guān)于下面程序段說法正確的是( ) class X { private: int n; public: X(X&); }; X::X(X&x) {n=x.n} X obj1,obj2(obj1);

A.語句obj2(obj1);的功能是用對象obj1初始化具有相同類類型的對象obj2

B.語句obj2(obj1);的功能是用對象obj2初始化具有相同類類型的對象obj1

C.X(X&x)中的&符號可以刪除

D.X(X&x)函數(shù)中不能訪問對象的私有成員


14.關(guān)于虛函數(shù),下列表述正確的是( )。

A.如果在重定義虛函數(shù)時使用virtual,則該重定義函數(shù)仍然是虛函數(shù)

B.虛函數(shù)不得聲明為靜態(tài)函數(shù)

C.虛函數(shù)不得聲明為另一個類的友元函數(shù)

D.派生類必須重新定義基類的虛函數(shù)


15.關(guān)于純虛函數(shù)和抽象類的描述中,錯誤的是()。

A.純虛函數(shù)是一種特殊的虛函數(shù),它沒有具體的實現(xiàn)。

B.抽象類是指具有純虛函數(shù)的類。

C.一個基類中有純虛函數(shù),該類的派生類一定不再是抽象類。

D.抽象類作為基類來使用,其純虛函數(shù)的實現(xiàn)由派生類給出。


16.下列關(guān)于構(gòu)造函數(shù)說法不正確的是()。

A.構(gòu)造函數(shù)必須與類同名

B.構(gòu)造函數(shù)可以省略不寫

C.構(gòu)造函數(shù)必須有返回值

D.在構(gòu)造函數(shù)中可以對類中的成員進行初始化


17.若析構(gòu)函數(shù)是虛函數(shù),則delete對析構(gòu)函數(shù)的調(diào)用采用( )。

A.靜態(tài)聯(lián)編

B.動態(tài)聯(lián)編

C.重載函數(shù)

D.多重函數(shù)


18.當一個派生類公有繼承一個基類時,基類中的所有公有成員成為派生類的( )。

A.public成員

B.private成員

C.protected成員

D.友元


19.程序在調(diào)用重載函數(shù)時,根據(jù)()區(qū)分到底要調(diào)用哪個函數(shù)。

A.函數(shù)名

B.返回值類型

C.參數(shù)個數(shù)和類型

D.以上都可以


20.下列關(guān)于對象數(shù)組的描述中,錯誤的是( )。

A.對象數(shù)組的下標是從0開始的

B.對象數(shù)組的數(shù)組名是一個常量指針

C.對象數(shù)組的每個元素是同一個類的對象

D.對象數(shù)組只能賦初值,而不能在定義后賦值


21.“#include <iostream>”是()預(yù)處理命令。

A.宏定義

B.文件包含

C.條件編譯

D.工程配置


22.下面敘述不正確的是( )。

A.基類的保護成員在派生類中仍然是保護的

B.基類的保護成員在公有派生類中仍然是保護的

C.基類的保護成員在私有派生類中是私有的

D.對基類成員的訪問必須是無二義性


23.下面對友元的錯誤描述是( )。

A.關(guān)鍵字friend用于聲明友元

B.一個類的成員函數(shù)可以是另一個類的友元

C.友元函數(shù)訪問對象的成員不受訪問特性影響

D.友元函數(shù)通過this指針訪問對象成員


24.如果類A被說明成類B的友元,則()。

A.類A的成員函數(shù)不得訪問類B的所有成員

B.類A的成員函數(shù)可以訪問類B的所有成員

C.類A的成員即類B的成員

D.類B的成員即類A的成員


25.一個類的友元函數(shù)能夠訪問該類的( )。

A.私有成員

B.保護成員

C.公有成員

D.所有成員


26.下列關(guān)于拷貝構(gòu)造函數(shù)的描述中,錯誤的是()。

A.一個類可以定義多個拷貝構(gòu)造函數(shù)

B.若未定義拷貝構(gòu)造函數(shù),則系統(tǒng)會提供一個默認拷貝構(gòu)造函數(shù)

C.當類中有指針成員變量時,通常要為這個類定義一個拷貝構(gòu)造函數(shù)來實現(xiàn)深拷貝

D.拷貝構(gòu)造函數(shù)中的參數(shù)按引用方式傳遞


27.下列關(guān)于運算符重載的描述中,()是正確的。

A.運算符重載可以改變操作數(shù)的個數(shù)

B.運算符重載可以改變優(yōu)先級

C.運算符重載可以改變結(jié)合性

D.運算符重載不可以改變語法結(jié)構(gòu)


28.下列( )是構(gòu)造函數(shù)的特征。

A.構(gòu)造函數(shù)在創(chuàng)建對象時自動調(diào)用

B.構(gòu)造函數(shù)不可以重載

C.構(gòu)造函數(shù)不可以設(shè)置默認參數(shù)

D.構(gòu)造函數(shù)必須指定函數(shù)類型


29.執(zhí)行語句“string str("abc");”時,系統(tǒng)會自動調(diào)用string類的構(gòu)造函數(shù)()。

A.string()

B.string(const char *s)

C.string(const string &str)

D.string(size_type n, char c)


30.以成員函數(shù)方式重載運算符“>”,則obj1>obj2被C++編譯器解釋為()。

A.operator>(obj1,obj2)

B.>(obj1,obj2)

C.obj1.operator>(obj2)

D.obj2.operator>(obj1)


31.已知“float *p; p=new float[2];”,若要釋放p所指向的堆中的這些字節(jié),下列語句正確的是()。

A.delete p;

B.delete p[];

C.delete []p;

D.delete p[2];


32.建立類模板對象的實例化過程為( )。

A.基類->派生類

B.構(gòu)造函數(shù)->對象

C.模板類->對象

D.模板類->模板函數(shù)


33.撤消對象時,系統(tǒng)自動調(diào)用( )函數(shù)。

A.成員函數(shù)

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

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

D.普通函數(shù)


34.下列關(guān)于賦值運算符重載的說法中正確的是()。

A.返回值一般是以引用方式返回的對象,而函數(shù)體中總是用語句“return *this;”返回this指針所指向的對象

B.賦值運算符只能以非成員函數(shù)的方式重載

C.賦值運算符既可以以成員函數(shù)的方式重載,又可以以非成員函數(shù)的方式重載

D.以上均不正確


35.關(guān)于動態(tài)關(guān)聯(lián)的下列敘述中,()是錯誤的。

A.動態(tài)關(guān)聯(lián)是以虛函數(shù)為基礎(chǔ)的

B.動態(tài)關(guān)聯(lián)調(diào)用虛函數(shù)操作是指向?qū)ο蟮闹羔樆蛞?/p>

C.動態(tài)關(guān)聯(lián)是在運行時確定所調(diào)用的函數(shù)代碼的

D.動態(tài)關(guān)聯(lián)是在編譯時確定操作函數(shù)的


二、判斷題 (共 15 道試題,共 30 分)

36.定義重載函數(shù)時,應(yīng)保證函數(shù)類型有所不同。


37.運算符[]只能用成員運算符來重載,不能用友元運算符來重載。


38.純虛函數(shù)是一種特殊的成員函數(shù),它是一種沒有具體實現(xiàn)的虛函數(shù)。


39.已知Circle類對象c,Circle類中有一個setCenter成員函數(shù),如果c.setCenter(...)返回值仍然是c,則setCenter函數(shù)中的return語句應(yīng)寫作return this;。


40.當一個函數(shù)的返回值是類對象時,則該函數(shù)執(zhí)行結(jié)束后會自動調(diào)用拷貝構(gòu)造函數(shù)初始化一個臨時對象。


41.在類內(nèi)部定義的public數(shù)據(jù)可以在類外進行存取。


42.定義虛函數(shù)所用的關(guān)鍵字是virtual。


43.重載函數(shù)可以帶默認參數(shù)值,但要注意二義性。


44.某類中的友元類的所有成員函數(shù)可以存取或修改該類中的私有成員。


45.構(gòu)造函數(shù)說明為純虛函數(shù)是沒有意義的。


46.函數(shù)的參數(shù)個數(shù)和類型都相同,只是返回值不同,這不是重載函數(shù)。


47.只有返回引用的函數(shù)可以作為賦值語句的左值。


48.打開ASCII碼流文件和二進制流文件時,打開方式是相同的。


49.運算符重載實際上是對已有的運算符重新定義其功能。


50.類的靜態(tài)成員函數(shù)中不能訪問非靜態(tài)成員。



奧鵬,國開,廣開,電大在線,各省平臺,新疆一體化等平臺學(xué)習(xí)
詳情請咨詢QQ : 3230981406或微信:aopopenfd777

  • 上一篇:
  • 下一篇:
  • 作業(yè)咨詢 論文咨詢
    微信客服掃一掃

    回到頂部