2023年面向?qū)ο蟪绦蛟O計題庫C_第1頁
2023年面向?qū)ο蟪绦蛟O計題庫C_第2頁
2023年面向?qū)ο蟪绦蛟O計題庫C_第3頁
2023年面向?qū)ο蟪绦蛟O計題庫C_第4頁
2023年面向?qū)ο蟪绦蛟O計題庫C_第5頁
已閱讀5頁,還剩38頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

一、單項選擇題1.在C++語言中,對函數(shù)參數(shù)默認值描述對的的是:(D)A)函數(shù)參數(shù)的默認值只能設定一個B)一個函數(shù)的參數(shù)若有多個,則參數(shù)默認值的設定可以不連續(xù)C)函數(shù)參數(shù)必須設定默認值D)在設定了參數(shù)的默認值后,該參數(shù)后面定義的所有參數(shù)都必須設定默認值2.假定AB為一個類,則執(zhí)行ABx;語句時將自動調(diào)用該類的(B)。

A)有參構造函數(shù)B)無參構造函數(shù)

C)拷貝構造函數(shù)D)賦值構造函數(shù)3.下述關于開關語句的描述中,()是對的的。A)開關語句中default子句可以沒有,也可以有一個;B)開關語句中每個語句序列中必須有break語句;C)開關語句中default子句只能放在最后;D)開關語句中case子句后面的表達式可以是整形表達式。4.關于對象概念的描述中,()是錯誤的。A)對象就是C語言中的結(jié)構變量;?B)對象代表著正在創(chuàng)建的系統(tǒng)中的一個實體; C)對象是一個狀態(tài)和操作(或方法)的封裝體; D)對象之間的信息傳遞是通過消息進行的;5.下列給字符數(shù)組進行初始化中,()是對的的。A)chars1[]="12345abcd";B)chars2[3]="xyz";C)chars3[][3]={'a','x','y'};D)chars4[2[3]={"xyz","mnp"};6.在inta[][3]={{1},{3,2},{4,5,6},{0}}中,a[2][2]的值是()。A)3

B)2

C)6

D)47.聲明類test的拷貝構造函數(shù)的對的形式是(D)。A)inttestB)voidtestC)test(void)D)test(test&)8.關于new運算符的下列描述中,()是錯的。A)它可以用來動態(tài)創(chuàng)建對象和對象數(shù)組;B)使用它創(chuàng)建的對象或?qū)ο髷?shù)組可以使用運算符delete刪除;C)使用它創(chuàng)建對象時要調(diào)用構造函數(shù);D)使用它創(chuàng)建對象數(shù)組時必須指定初始值。9.在C++中有以下4條語句:staticinthot=200;int&rad=hot;?

hot=hot+100;cout<<rad<<endl;執(zhí)行這4條語句后輸出為:()。?A)0

B)100?C)300

D)20010.下列關于構造函數(shù)的描述中,錯誤的是(B)。A)構造函數(shù)可以設立默認參數(shù);B)構造函數(shù)在聲明對象時自動執(zhí)行;C)構造函數(shù)可以對靜態(tài)數(shù)據(jù)成員進行初始化;D)構造函數(shù)可以重載;11.下面關于重載函數(shù)的說明中對的的是()。 A)重載函數(shù)必須具有不同的返回類型。?B)重載函數(shù)形參的個數(shù)必須不同?C)重載函數(shù)必須具有不同的形式參數(shù)表?D)重載函數(shù)名可以不同 12.下列關于C++函數(shù)的說明中,對的的是()。A)內(nèi)聯(lián)函數(shù)就是定義在另一個函數(shù)體內(nèi)部的函數(shù)B)函數(shù)體的最后一條語句必須是return語句C)C++規(guī)定在調(diào)用一個函數(shù)前必須先聲明其原型D)編譯器會根據(jù)函數(shù)的返回值類型和參數(shù)表來區(qū)分函數(shù)的不同重載形式13.已知函數(shù)原型為:voidfoo(int*,long&b);實參定義為: ?inti;? longf;則對的的調(diào)用語句是().A)foo(i,&f);B)foo(i,f);C)foo(&i,f);D)foo(&i,&f);14.C++中對于結(jié)構中定義的成員,其默認的訪問權限為()。A)publicB)protectedC)privateD)static15.下列關于類與對象的說法中,不對的的是()。A)對象是類的一個實例B)任何對象只能屬于一個具體的類C)一個類只能有一個對象D)類與對象的關系和數(shù)據(jù)類型與變量的關系相似16.下列關于構造函數(shù)的描述中錯誤的是()A)構造函數(shù)可以設立默認參數(shù)B)構造函數(shù)在定義類對象時自動執(zhí)行C)構造函數(shù)可以對靜態(tài)數(shù)據(jù)成員進行初始化D)構造函數(shù)不可以重載17.類的析構函數(shù)的作用是()。A)作為類的一般成員函數(shù)B)類的初始化C)對象的初始化D)對象的刪除18.以下關于靜態(tài)數(shù)據(jù)成員的描述對的的是()。??A)靜態(tài)數(shù)據(jù)成員可以在類體中進行初始化B)靜態(tài)數(shù)據(jù)成員不可以被類的實例調(diào)用? C)靜態(tài)數(shù)據(jù)成員不能受protected控制符的作用D)靜態(tài)數(shù)據(jù)成員可以直接用類名調(diào)用19.下面關于友元函數(shù)的描述中對的的是()。A)友元函數(shù)的實現(xiàn)必須在類的內(nèi)部定義B)友元函數(shù)是類的成員函數(shù)C)友元函數(shù)破壞了類的封裝性和隱藏性C)友元函數(shù)不能訪問類的私有成員20.下面關于友元函數(shù)的描述中錯誤的是()。A)假如類A是類B的友元,那么類B也是類A的友元B)假如函數(shù)fun()被說明為類A的友元,那么在fun()中可以訪問類A的私有成員C)友元關系不能被繼承D)假如類A是類B的友元,那么類A的所有成員函數(shù)都是類B的友元函數(shù)21.下列屬于C++語句的是。A);B)a=17C)a+5D)cout<<’\n’22.執(zhí)行語句k=30;j=k++;后k和j的值分別為。A)k=30,j=30

B)k=30,j=31

C)k=31,j=30

D)k=31,j=3123.若X是一個bool型變量,則X&&5<3的值

。A)為true

B)為falseC)與X的值相同

D)與X的值相反24.假如a=1,b=2,c=3,d=4,則條件表達式“a>b?a:c<d?c:d”的值為

。A)3

B)2

C)1

D)425.執(zhí)行下列語句后的輸出結(jié)果是。inthot=100;int&rad=hot;hot+=100;cout<<rad<<endl;

A)0

B)100

C)200

D)30026.下列關于break語句的敘述不對的的是。A)break語句可用于循環(huán)體中,它將使執(zhí)行流程跳出本層循環(huán)體;break語句可用于switch語句中,它將使執(zhí)行流程跳出當前的switch語句;break語句可用于if語句中,它將使執(zhí)行流程跳出當前if語句;break語句在一層循環(huán)體中可以出現(xiàn)多次。27.下面關于類的對象性質(zhì)的描述,對的的是。A)對象之間不可以互相賦值B)不可以說明指向?qū)ο蟮闹羔楥)對象不能用作數(shù)組元素D)一個對象能用作另一個對象的成員28.在C++中實現(xiàn)封裝是借助于。A)枚舉

B)類C)數(shù)組

D)函數(shù)29.下列不是描述類的成員函數(shù)的是。A)構造函數(shù)B)析構函數(shù)C)友元函數(shù)D)拷貝構造函數(shù)30.不能作為函數(shù)重載判斷依據(jù)的是。A)參數(shù)個數(shù)

B)參數(shù)類型

C)函數(shù)名稱

D)返回值類型31.假定一個類的構造函數(shù)為A(intaa,intbb){a=aa++;b=a*bb++;},則執(zhí)行

AX(4,5);語句后,X.a和X.b的值分別為。

A)4和5

B)5和30

C)4和20

D)20和532.對于double(*p)[10];的描述,是對的的。A)p是一個指向數(shù)組的指針,所指向的數(shù)組是10個double型元素;B)p是一個指向某個數(shù)組中第10個元素的指針,該元素是double型變量;C)p[5]表達某個數(shù)組的第10個元素的值;D)p是一個具有10個元素的指針數(shù)組,每個元素是一個double型指針;33.下面的函數(shù)聲明中,哪一個是”voidBC(inta,intb);”的重載函數(shù)?

A)int

BC(inta,intb)

B)voidBC(inta,charb)C)floatBC(inta,intb,intc=0)

D)voidBC(inta,intb=0)34.已知charc;char*constpc="asdf",

是對的的。A)pc="dfgh"B)*pc=‘b’C)*pc++=‘y’D)pc=&c35.下列關于構造函數(shù)的敘述,錯誤的是。構造函數(shù)可以設立默認參數(shù);構造函數(shù)在說明類變量時自動調(diào)用;構造函數(shù)可以對靜態(tài)數(shù)據(jù)成員進行初始化;構造函數(shù)可以重載;36.下列關于構造函數(shù)的描述中錯誤的是()A)構造函數(shù)可以設立默認參數(shù)B)構造函數(shù)在定義類對象時自動執(zhí)行C)構造函數(shù)可以對靜態(tài)數(shù)據(jù)成員進行初始化D)構造函數(shù)不可以重載37.類的析構函數(shù)的作用是()。A)作為類的一般成員函數(shù)B)類的初始化C)對象的初始化D)對象的刪除38.以下關于靜態(tài)數(shù)據(jù)成員的描述對的的是()。? A)靜態(tài)數(shù)據(jù)成員可以在類體中進行初始化B)靜態(tài)數(shù)據(jù)成員不可以被類的實例調(diào)用? C)靜態(tài)數(shù)據(jù)成員不能受protected控制符的作用D)靜態(tài)數(shù)據(jù)成員可以直接用類名調(diào)用39.下面關于友元函數(shù)的描述中對的的是()。A)友元函數(shù)的實現(xiàn)必須在類的內(nèi)部定義B)友元函數(shù)是類的成員函數(shù)C)友元函數(shù)破壞了類的封裝性和隱藏性C)友元函數(shù)不能訪問類的私有成員40.下面關于友元函數(shù)的描述中錯誤的是()。A)假如類A是類B的友元,那么類B也是類A的友元B)假如函數(shù)fun()被說明為類A的友元,那么在fun()中可以訪問類A的私有成員C)友元關系不能被繼承D)假如類A是類B的友元,那么類A的所有成員函數(shù)都是類B的友元函數(shù)41.重載函數(shù)在調(diào)用時選擇的依據(jù)中,錯誤的是()A.函數(shù)的參數(shù)B.參數(shù)的類型C.函數(shù)的名字D.函數(shù)的類型42.一個函數(shù)功能不太復雜,但規(guī)定被頻繁調(diào)用,選用(.)A.內(nèi)聯(lián)函數(shù)B.重載函數(shù)C.遞歸函數(shù)D.嵌套函數(shù)43.下列不是描述類的成員函數(shù)的是()A.構造函數(shù)B.析構函數(shù)C.友元函數(shù)D.拷貝構造函數(shù)44.構造函數(shù)不具有的特性的是()A.構造函數(shù)的函數(shù)名與類名相同B.構造函數(shù)可以重載C.構造函數(shù)可以設立默認參數(shù)D.構造函數(shù)可以指定返回類型45.通常,拷貝構造函數(shù)的參數(shù)是()A.某個對象名B.某個對象的成員名C.某個對象的引用名D.某個對象的指針名46.繼承機制的作用是()A.信息隱藏B.數(shù)據(jù)封裝C.代碼重用D.數(shù)據(jù)抽象47.類的析構函數(shù)的作用是()A.一般成員函數(shù)B.類的初始化C.對象的初始化D.刪除對象創(chuàng)建的所有對象48.類的析構函數(shù)是在()調(diào)用的。A.類創(chuàng)建時B.創(chuàng)建對象時C.刪除對象時D.不自動調(diào)用49.已知print()函數(shù)是一個類無返回值的常成員函數(shù),下列表達中對的的是()。A.voidprint()constB.constvoidprint()C.voidconstprint;D.voidprint(const);50.假如類A被說明成類B的友元,則()A.類A的成員即類B的成員B.類B的成員即類A的成員C.類A的成員函數(shù)不得訪問類B的成員D.類B不一定是類A的友元51.通過一個對象調(diào)用虛函數(shù)時,C++系統(tǒng)對該調(diào)用采用()。A.動態(tài)聯(lián)編B.靜態(tài)聯(lián)編C.不擬定是哪種聯(lián)編D.函數(shù)重載52.在公有繼承的情況下,基類成員在派生類中的訪問權限()A.受限制B.保持不變C.受保護D.不受保護53.在C++中,當一個對象被創(chuàng)建后,它的每一個成員函數(shù)都具有一個系統(tǒng)自動生成的隱含的指針,稱之為()指針。A.對象B.派生C基類D.this54.假定AB為一個類,則執(zhí)行ABx;語句時將自動調(diào)用該類的()A.有參構造函數(shù)B.無參構造函數(shù)C.拷貝構造函數(shù)D.賦值構造函數(shù)55.C++語言建立類族是通過()A.類的嵌套B.類的繼承C.虛函數(shù)D.抽象類二、判斷題1、C++中,數(shù)組下標從1開始。(錯)2、C++允許對字符串進行整體操作。()3、break語句也可以用于if體內(nèi),它可退出if語句。()4、在說明語句chara(‘A’),&b=a,*pa=&a;中,b的值與*pa的值相等。()5、對象數(shù)組的元素可以是不同類的對象。()6、私有繼承中,基類中所有成員對派生類的對象都是不可見的。()7、類中所提供的成員函數(shù)可以直接訪問私有成員。()8、按照標記符的規(guī)定,下劃線是不能組成對的標記符的。()9、函數(shù)的默認參數(shù)沒有順序規(guī)定,可以隨意定義。()10、在C++語言中,”A”占兩個字節(jié),而’A’占一個字節(jié)。()11、C++語言支持封裝性和繼承性,不支持多態(tài)性。[錯]12、關系運算符可以用來比較兩個字符的大小,也可用來比較兩個字符串的大小。)[]13、字符串"sdfgh"的長度是5。[]14、引用和指針都可作函數(shù)參數(shù)。[]15、友元函數(shù)說明在類體內(nèi),它是一種成員函數(shù)。[]16、友元類必須被說明為公有成員。[]17、純虛函數(shù)是在基類中說明的虛函數(shù),它在該基類中沒有定義具體的操作內(nèi)容。[]18、析構函數(shù)不能被繼承。[]19、運算符重載以后,其優(yōu)先級和結(jié)合性都不能改變。[]20、在C++中,函數(shù)名事實上是一個指針,它指向函數(shù)的入口。[]21、構造函數(shù)可以被繼承。()22、析構函數(shù)不能被繼承。()23、多繼承情況下,派生類的構造函數(shù)的執(zhí)行順序取決于定義派生時所指定的各基類的順序。()24、解決多繼承情況下出現(xiàn)的二義性的方法之一是使用成員名限定法。()25、函數(shù)的參數(shù)個數(shù)和類型都相同,只是返回值不同,這不是重載函數(shù)。()26、多數(shù)運算符可以重載,個別運算符不能重載,運算符重載是通過函數(shù)定義實現(xiàn)的。()27、對每個可重載的運算符來講,它既可以重載為友元函數(shù),又可以重載為成員函數(shù),還可以重載為非成員函數(shù)。()28、對單目運算符重載為友元函數(shù)時,說明一個形參;重載為成員函數(shù)時,不能顯式說明形參。()29、重載運算符保持原運算符的優(yōu)先級和結(jié)合性不變。()30、構造函數(shù)說明為純虛函數(shù)是沒故意義的。()三、簡答題1.簡述C++的異常解決機制?2.C++的預定義的流對象有哪些?3.試以客觀世界為例,說明抽象、封裝、繼承性和多態(tài)性等概念。4.多繼承的情況下為什么會產(chǎn)生二義性?如何消除二義性?5.試說明voidF(constT&t);和inff()const;中關鍵字const作用。6.有如下程序#include<iostream>#include<fstream>usingnamespacestd;classB;classA{?friendB; public:??A(){ ? cout<<"inA()"<<endl;? }? A(constA&a){? ?cout<<"inA(constA&a)<<endl;??}? ~A(){? cout<<"In~A()"<<endl;? }};classB:publicA{?public: ?B(){ ? cout<<"InB()"<<endl; ?} ?B(constAa){? cout<<"InB(constAa)"<<endl; }};voidf(A&a){?cout<<"Inf(A&a)"<<endl;}voidff(constB&b){?cout<<"Inff(B&b)"<<end; }voidff(Aa){}intmain(){ Aa;?Bbb=a;} 程序運營的結(jié)果是_________________________7.有如下程序#include<iostream>usingnamespacestd;templat(yī)e<classType>classHisClass{?Typedata;?public:??HisClass(Typea,Typeb,Typec); TypegetData();};template<classType>HisClass<Type>::HisClass(Typea,Typeb,Typec){?if(a>b&&a>c)? data=a; else? if(b>c) ?data=b; else ? data=c;}template<classType>TypeHisClass<Type>::getData(){ returndat(yī)a;}intmain(){ HisClass<int>x1(3,4,5),x2(5,3,4), x3(4,5,3),x4(7,8,9), ???x5(8,7,9); cout<<x1.getData()<<x2.getDat(yī)a()<<x3.getData() <<x4.getData()<<x5.getData()<<endl;?system("pause");?return0;}程序運營的結(jié)果是_________________________8.以下程序在運營中出現(xiàn)致命錯誤,找犯錯誤因素并修正。#include<iostream>#include<cstring>classsample{?private: char*string; ? public:??sample(constchar*s){? string=newchar[strlen(s)+1];?? strcpy(strings);??} ?~sample(){?? deletestring;? };};samplef(char*arg){?sampletmp(arg);?returntmp;}intmain(){?samplelocal=f("abcd");?return0;}9.有如下程序#include<iostream>usingnamespacestd;classP{ char*name; intage; char*add;?public: P(){ ?cout<<"P"; } ?~P(){ cout<<"!P"; ?}};classS:publicP{ char*department; intlevel; public:??S(){? cout<<"S"; ?} ~S(){? cout<<"!S"; }};classT:publicP{ char*major;?floats; public:? T(){ cout<<"T"; }??~T(){?? cout<<"!T";? }};intmain(){ Ss;?Tt;?system("pause");?return0;}程序運營的結(jié)果是_________________________10.有如下程序#include<iostream>usingnamespacestd;classB{public:?B(){ ?cout<<"B::B()"<<endl;num++; }?virtualvoidf()=0;?virtualvoidg()=0; voidk(){ f(); ?cout<<"B::k()"<<endl;g(); }?virtual~B(){??cout<<"B::~B()"<<endl;???num--;?}?staticintgetNum(){ ?returnnum; }private: ?stat(yī)icintnum;};classD1:publicB{public:?D1(){? cout<<"D1::D1()"<<endl;?}?voidf(){ ?cout<<"D1::f()"<<endl;??} voidg(){? cout<<"D1::g()"<<endl;?} ~D1(){ cout<<"D1::~D1()"<<endl; }};classD2:publicB{public: D2(){ cout<<"D2::D2()"<<endl; }?voidf(){??cout<<"D2::f()"<<endl; } voidg(){??cout<<"D2::g()"<<endl;? } ~D2(){ ?cout<<"D2::~D2()"<<endl; }};intB::num=0;intmain(){?B*buf[3]; buf[0]=newD1; ?buf[1]=newD2;??buf[2]=newD1; inti;?cout<<B::getNum()<<endl;?for(i=0;i<3;i++)?? buf[i]->k();?for(i=0;i<3;i++) ? deletebuf[i];?cout<<B::getNum()<<endl; system("pause");?return0;?}程序運營的結(jié)果是_________________________11.有如下程序#include<iostream>usingnamespacestd;classR{ public: R(intr1,intr2):R1(r1),R2(r2){};? voidprint(); voidprint()const;?private:? intR1,R2;};voidR::print(){? cout<<R1<<","<<R2<<endl; ?};voidR::print()const{? ?cout<<R1<<","<<R2<<endl;??}intmain(){?Ra(5,4);?constRb(20,52); b.print();?system("pause");?return1;}程序運營的結(jié)果是_________________________12.有如下程序#include<iostream>usingnamespacestd;classdemo{ public:? staticintconstructor,copy_constructor; demo(){? cout<<"defaultconstructor"<<endl; ? constructor++;??}? demo(constdemo&x){ ??cout<<"copyconstructor"<<endl; ?copy_constructor++; ?}}; intdemo::constructor=0;intdemo::copy_constructor=0;demousercode(demob){?democ(b);?returnc;}intmain(){ demoa,d;?cout<<"callingusercode"<<endl;?d=usercode(a); cout<<demo::constructor<<","<<demo::copy_constructor<<endl;?system("pause");?return0;}程序運營的結(jié)果是_________________________13.有如下程序#include<iostream>usingnamespacestd;classA{ staticintm; intn;?public: A(intm,intn){???m=this->m;? ?n=this->n; ?} Show(){???cout<<m<<n<<endl; ?}}intA::m; intmain(){?Aa1(3,4); Aa2(5,6); a1.Show(); a2.Show();}程序運營的結(jié)果是_________________________14.有如下程序#include<iostream>usingnamespacestd;classP{?char*name;?intage; char*add;?public: ?P(){ ?cout<<"P";? }??~P(){ ?cout<<"!P"; ?}};classS:publicP{?char*department; intlevel;?public: ?S(){ ?cout<<"S";??} ?~S(){? ?cout<<"!S";??}};classT:publicP{ char*major; floats; public: ?T(){ ?cout<<"T";? }? ~T(){ cout<<"!T"; }};intmain(){ Ss;?Tt; system("pause"); return0;}程序運營的結(jié)果是:15.為什么要定義虛析構函數(shù)?16.有如下程序#include<iostream>usingnamespacestd;classB{public: B(){? cout<<"B::B()"<<endl;num++; } virtualvoidf()=0;?virtualvoidg()=0;?voidk(){??f(); ?cout<<"B::k()"<<endl;g(); } virtual~B(){? cout<<"B::~B()"<<endl;? ?num--; }?staticintgetNum(){? returnnum;?}privat(yī)e: ?staticintnum;};classD1:publicB{public: D1(){? cout<<"D1::D1()"<<endl;?}?voidf(){ ?cout<<"D1::f()"<<endl; } voidg(){ cout<<"D1::g()"<<endl;?}?~D1(){ cout<<"D1::~D1()"<<endl; }};classD2:publicB{public: D2(){ ?cout<<"D2::D2()"<<endl; }?voidf(){ ?cout<<"D2::f()"<<endl; ?}?voidg(){??cout<<"D2::g()"<<endl; } ~D2(){??cout<<"D2::~D2()"<<endl;?}};intB::num=0;intmain(){ B*buf[3]; buf[0]=newD1; ?buf[1]=newD2; buf[2]=newD1; inti; cout<<B::getNum()<<endl; for(i=0;i<3;i++)? buf[i]->k();?for(i=0;i<3;i++)?? ?deletebuf[i];?cout<<B::getNum()<<endl; system("pause");?return0; }程序運營的結(jié)果是_________________________17.有如下程序#include<iostream>usingnamespacestd;classR{ public: ?R(intr1,intr2):R1(r1),R2(r2){};??voidprint();??voidprint()const; private: ?intR1,R2;};voidR::print(){? cout<<R1<<","<<R2<<endl;? };voidR::print()const{? cout<<R1<<","<<R2<<endl; }intmain(){?Ra(5,4);?constRb(20,52); b.print(); system("pause");?return1;}程序運營的結(jié)果是:18.有如下程序#include<iostream>usingnamespacestd;classB;classA{ friendB;?public: ?A(){ cout<<"inA()"<<endl; }??A(constA&a){ ? cout<<"inA(constA&a)<<endl; ?} ~A(){? cout<<"In~A()"<<endl;? }};classB:publicA{?public:? B(){ cout<<"InB()"<<endl;??} B(constAa){? cout<<"InB(constAa)"<<endl;??}};voidf(A&a){ cout<<"Inf(A&a)"<<endl;}voidff(constB&b){?cout<<"Inff(B&b)"<<end; }voidff(Aa){}intmain(){?Aa; Bbb=a;} 19.有如下程序#include<iostream>usingnamespacestd;classdemo{? public:? staticintconstructor,copy_constructor;? demo(){? cout<<"defaultconstructor"<<endl; constructor++;? }??demo(constdemo&x){ ? cout<<"copyconstructor"<<endl;? ?copy_constructor++; }};?intdemo::constructor=0;intdemo::copy_constructor=0;demousercode(demob){ democ(b); returnc;}intmain(){?demoa,d; cout<<"callingusercode"<<endl; d=usercode(a);?cout<<demo::constructor<<","<<demo::copy_constructor<<endl;?system("pause");?return0;}程序運營的結(jié)果是:20.請分析下面的程序并給出該程序的執(zhí)行結(jié)果。#include<iostream.h>classAA{inta;public:AA(){cout<<"InitualizingAA!\n";}~AA(){cout<<"DestroyingAA!\n";}};classBB{intb;AAp;public:BB(){cout<<"InitualizingBB!\n";}~BB(){cout<<"DestroyingBB!\n";}};voidmain(){BBX;cout<<"Endingmain!\n";}執(zhí)行該程序后,輸出結(jié)果為:21.寫出下列程序的運營結(jié)果。#include<iostream>usingnamespacestd;classAA{inta;public:AA(inti){a=i;cout<<"AA="<<a<<"\n";}virtual~AA(){cout<<"~AA="<<a<<"\n";}};classBB:publicAA{intb;public:BB(inti,intj):AA(i){b=j;cout<<"BB="<<b<<"\n";}~BB(){cout<<"~BB="<<b<<"\n";}};voidmain(){AA*pa=newAA(8);deletepa;AA*pb=newBB(6,9);deletepb;}執(zhí)行該程序后,輸出結(jié)果為:22.寫出下面程序的輸出結(jié)果。#include<iostream.h>classTest{private:stat(yī)icintval;inta;public:staticintfunc();staticvoidsfunc(Test&r);};intTest::val=20;intTest::func(){val--;returnval;}voidTest::sfunc(Test&r){r.a=25;cout<<"Result3="<<r.a;}voidmain(){cout<<"Resultl="<<Test::func()<<endl;Testa;cout<<"Result2="<<a.func();Test::sfunc(a);}執(zhí)行該程序后,輸出結(jié)果為:23.寫出下面程序輸出結(jié)果。#include<iostream.h>classA{public:virtualvoidfunc(){cout<<"funcinclassA"<<endl;}};classB{public:virtualvoidfunc(){cout<<"funcinclassB"<<endl;}};classC:publicA,publicB{public:voidfunc(){cout<<"funcinclassC"<<endl;}};voidmain(){Cc;A&pa=c;B&pb=c;C&pc=c;pa.func();pb.func();pv.func();}執(zhí)行該程序后,輸出結(jié)果為:24.寫出下面程序的輸出結(jié)果。#include<iostream.h>classLocation{public:intX,Y;voidinit(intinitX,intinitY);intGetX();intGetY();};voidLocat(yī)ion::init(intinitX,intinitY){X=initX;Y=initY;}intLocation::GetX(){returnX;}intLocation::GetY(){returnY;}voiddisplay(Location&rL){cout<<rL.GetX()<<""<<rL.GetY()<<'\n';}voidmain(){LocationA[5]={{0,0},{1,1},{2,2},{3,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論