




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
假定AB引用是某低变量的别名,射引用的操作就是封被引用变量的操作。
6A.B
CB.金昔
假定AB悬壹种类,则执行ABx;^句畤将自勤调用该类的辗参构造函数。
6A.W
rB.®
构造函数用来初始化类的新封象,构造函数与类同名,返回类型只能卷void。
rA.W
△B.籍
用new勤态分派的内存是在堆中分派的,而不是在栈中分派的。
6A.W
B.金昔
使用关键字class定义的类中缺省的访冏权限是私有(private)的。
%A.W
CB.®
在公有继承中,基类中的公有组员和私有组员在派生类中都是可见的。
rA.W
6B.tg-
c++as言的襟识符是不辨别大小写的。
「A.W
6B.名昔
作用域运算符(::)只能用来限定组员函数所属的类。
rA.W
B.拿音
申明封象畤,类名前面不需要加class关键字。
A.B
B.金昔
C++程序壹般应常具有main函数,它是C++程序执行的人口。
6A.W
rB.®
可以在类的构造函数中封峥态数据组员迤行初始化。
rA.W
6B.£昔
C++考普言中,既容继承,又容言午多继承。
6A.封
「B.金昔
派生类的继承方式有两种:公有继承和私有继承。
CA.W
6B.籍
多继承状况下,派生类的构造函数的执行次序取决于定义派生类畤所指定的各基类的次序。
®A.W
CB.
类的私有组员只能被类中的组员函数访冏,任何类以外的函数封它凭的访冏都是非法的。
rA.W
%B.$昔
构造函数和析构函数都不能重载。
rA.W
B.
在基类中被申明卷虚函数的类的组员函数必须在每他I派生类中显式申明卷虚函数,才能具有
多态的特性。
A.W
1B.
有关运算符重载,运算符函数的返回类型不能申明悬基本数据类型。
rA.封
6B.由昔
将类的壹种封象赋值,合该类的另壹种封象畤,调用拷贝构造函数。
CA.封
%B.金昔
模板可以使程序封任何数据类型迤行同样方式的处理。
%A.W
B.籍
1.编译源文献彳发产生的文献是()。
1A.目的文献
CB.可执行文献
rC.源文献
「D.^文献
2.每值1C++程序只能有壹种()。
rA.全局变量
「B.函数
rC.醺文献
GD.主函数
3.使用内联函数的好处是()。
A.增是函数调用次数
"B.提高代码执行效率
rC.减少代码量,增强代码可镣性
CD.隐藏内部实现
4.下列不是函数重载所规定的条件是()。
CA.函数名相似
B.函数返回值类型不壹样
rC.参数类型不壹样
「D.参数彳因数不壹样
5.下列哪两彳固函数悬重载函数()。
A.voidal(),voida2()
B.intb(intx),floatb(intx)
C.charc(doubley),charc(inty,double2)
D.boold(doubley),boold(doubley,intx=0)
6.在面封封象措施中,实垣信息隐蔽依托的是()。
QA.封象的封装
CB.卦象的继承
rC.封象的多态
CD.卦象的分类
7.所谓数据封装就是将壹组数据和与追组数据有关操作组装在壹起,形成壹种实体,适实
体也就是()。
A.类
B.封象
C.函数体
D.数据块
8.下列有关类定义的^法中,封的的是()。
1*A.在类衷定义的函数卷内联函数
rB.类组员的默认访冏权限是保护的
rC.数据组员必须被申明卷私有的
rD.组员函数只能在类体外迤行定义
9.有关类和封象不封的的^法是()。
CA.类是壹种类型,它封装了数据和操作
「B.封象是类的实例
°C.壹种类的封象只有壹种
rD.壹种封象必属于某值I类
10.构造体中定义的组员默认的访冏属性卷().
A.public
B.private
C.friend
D.protected
11.类中定义的组员默认的访冏属性卷()。
A.public
B.private
C.friend
D.protected
12.有关构造函数的论述不封的的是()O
A.构造函数名必须和类名壹致
CB.构造函数在定义封象畤自勤执行
「C.构造函数辗任何函数类型
"D.在壹种类中构造函数有且仅有壹种
13.下列有关析构函数的描述中,误的是()。
1A.析构函数可以重载
rB.析构函数由系统自勤调用
「C.每值1封象的析构函数只被调用壹次
C【).每低1类均有析构函数
14.壹般拷贝构造函数的参数是()。
rA.封象名
rB.封象的组员名
仆C.封象的引用名
rD.封象的指针名
15.在类外定义组员函数畤,需要在函数名前加上()。
rA.类名
CB.封象名
rC.作用域运算符
1*D.类名和作用域运算符
16.在类定义中,卷阐明组员的访冏权限,private,protected,public可以出现次数
()O
1*A.次数没有详细限制
B.每种至多壹次
C.public至少壹次
CD.每种至少壹次
17.有关静态数据组员的描述中皓误的是()。
「A.类的静态数据组员是该类所有封象所共享的
*D.类的静态数据组员在在该类每他封象中都保留壹种备份
rC.类的静态数据组员必须迤行初始化
rD.类的静态数据组员可以不通遇封象来访冏
18.若壹种类的数据组员用const关键字修饰,则该数据组员()。
「A.静态函数中可以封该组员赋值
、B.构造函数只能通谩初始化列表封该组员初始化
rC.任何函数都不能使用该组员
rD.外部函数可以封该组员赋值
19.有两他类X和Y,且Y有壹种构造函数Y::Y(Xx);那么如下言吾句:
Xa;
Yb(a);
不曾调用下面的哪他函数()。
rA.Y的构造函数Y(Xx)
6B.Y的拷贝(复制)构造函数
rC.X的默认构造函数
「D.X的拷贝(复制)构造函数
20.已知类A的定义。假设xA的射象,则在类外方冏x封象中数据组员a和b分别
应采用()。
classA{
private:
inta;
public:
intgetValue0{
returna;
)
intb;
};
A.x::getVcilue(),x::b
r”B.x.a,x..b
C.x.a(),x.b()
D.x.getValucO,x.b
21.假设程序中先前已^定义了A,B,C三值1类,他#■!的构造函数分别畲愉出A
constructed^Bconstructed和Cconstructed,那么又定义了类D,并在main函数中
定义了壹种D类的封象,部分代码如下:
classD{
public:
D():a(),b(),c(){}
private:
Aa;
Bb;
Cc;
};
intmainO{
Dd;
return0;
)
程序的输出成果卷()O
A.AconstructedBconstructedCconstructed
B.CconstructedBconsti'uctedAconstructed
C.编译籍误
D.编译器决定
22.已知类CA中的某佃组员是类CB的封象,若要把道两值1类定义在同壹种文献中,则
)。
A.CA必须定义在CB之前
B.CB必须定义在CA之刖
C.若CA定义在CB之彳爰,则CA的申明必须出目前CB的定义之前
D.若CB定义在CA之彳缸则CB的申明必须出目前CA的定义之前
23.在设计麦种类的畤候,假如但愿容^宣种不属于该类的函数访冏该类的私有组员,应常
使用哪他关键字()O
A.public
B.private
6C.friend
C
D.protected
24.有关友元函数的描述中,籍误的是()。
6A.友元函数是组员函数
rB.友元函数能访冏类中私有组员
rC.友元函数破壤封装性
CD.友元函数申明在类体内
25.假加类A是类B的友元,则().
rA.类A的组员是类B的组员
「B.类B的组员是类A的组员
°C.类A的组员函数可以访冏类B的私有组员
D.类B是类A的友元
26.已知类A是类B的友元类,类B是类C的友元类,则()。
rA.类A壹定是类C的友元
「B.类C壹定是类A的友元
rC.类C的组员函数可以访冏类B的射象的任何组员
QD.类A的组员函数可以访冏类D的封象的任何组员
27.已知Point类具有趣参(默认)构造函数和有参构造函数,使用Pointa[3]={Point(1,
2),Point(3,4),Point()};畴,调用了()次Point类的辗参(默认)构造函数。
*A.1
「B.2
rC.3
CD.4
28.要定义壹种引用变量p使之引用类MyClass的壹种封象,封的的定义^句是()。
C
A.MyClassp=MyClass;
C
B.MyClassp=newMyClass;
C.MyClass&p=newMyClass;
6D.MyClassa,&p=a;
29.有关this指针的Bft法不封的的是()。
A.不能在程序中修改this指针
「B.this指针可以给其他指针赋值,但不能修改this指针
rC.静态组员函数中没有this指针
QD.this指针可以被赋值
30.有关C++的勤态存储分派,下列^法封的的是()。
A.new和delete是C++^言中专门用于勃态内存分派和释放的函数
B.勤态分派的内存空间也可以被初始化
C.常系统内存不够畴,曾自勤回收不再使用的内存单元,因此程序中不必用delete
释放内存空间
rD.富勒态分派内存失败畤,系统畲立即瓦解,因此壹定要慎用new
31.观测程序
#include<iostream>
usingnamespacestd
intmain()
int*first,*second;
first=newint[5];
second=first;
delete[]second;
delete[]first;
return0;
该程序与否封的,原因是什么?
rA.封的,由于first和second都是独立的指针变量
「B.不封的,由于first和second是有关而非独立的指针变量
C.封的,secondf■拷贝first的内容
作【).不封的,second和first指向相似的内容
32.C++中,不能被派生类继承的有()。
CA.析构函数
B.虚函数
rC.静态组员函数
【).友元函数
33.下列有关派生类的论述中,金昔误的是()O
A.派生类至少要有壹种基类
「B.派生类中包括了优基类继承的组员
「C.壹种派生类可以作卷另壹种派生类的基类
*D.基类组员被派生类继承彳为来访冏权限保持不变
34.下列有关类型转换封的的是().
CA.基类的封象可以被常作公有派生类封象使用
「B.派生类封象必须显式的转换卷基类封象
*C.派生类卦象可以初始化基类的引用
「I).基类的指针可以隐含转换卷派生类的指针
35.下列有关虚基类的描述中,误的是()。
CA.使用虚基类可以消除由多继承产生的二义性
「B.构造派生类封象畤,虚基类的构造函数只被谛.用壹次
6C.申明"classB:virtualpublicA”阐明类虚基类
「D.建立派生类封象畤,首先调用虚基类的构造函数
36.如下^法封的的是()。
*A.同壹种运算符可以被重载多次
rB.可以通遇运算符重载来创立C++中本来没有的运算符
CC.自增运算符重载畴,重载函数不容器午有输入参数
「D.运算符函数的返回类型不能申明悬基本数据类型
37.若A是壹种类名,则如下言吾句将曾产生的A封象值1数卷()o
Aal,*a2;
A*a3=newA();
A&a4=al;
B.2
C.3
CD.4
38.类C2是类Cl的派生类,下列^法中金昔误的是().
rA.Cl的组员都是C2的组员
rB.C2的封象可以赋值幺合Cl的变量
1•C.C1的友元函数都是C2的友元函数
C【).创立C2的封象畤,要执行C1的构造函数
39.若类A和类B都是类模板T的模板类,则如下言先法封的的是()。
rA.A的友元函数中,可以访冏B的私有组员
rB.A的封象可以赋值给B类型的变量
rC.A和B共享T的静态组员变量
'•D.A的组员函数中,不能访冏R的私有组员
40.若类B是优类A派生而来,而^句p.Do();在被多次执行畴,有的畤候调用的是类A
的Do组员函数,有的畤候调用的是类B的Do组员函数,那么p的类型可以是()。
A.A&
B.A*
rC.B
rD.A
41.将壹种封象放入STL中的容器衷畤,(
*A.实际上被放入的是该封象的壹种拷贝(副本)
B.实际上被放入的是该封象的指针
1C.实际上被放入的是该封象的引用
rD.实际上被放入的就是该封象自身
42.如下^法封的的是()。
&A.在multiset容器中,可以同步存储多种相似的元素
B.在set容器中,各元素的存储位置取决于它俨的插入次序
rC.向deque容器添加新封象畴,需要比较封象的大小
rD.在list容器中.各元素的存储位置取决于它代的值
43.若有如下定义:
set<int>::iteratoritl;it2,it3;
set<int>s;
则如下IB句不符合^法的是()。
A.itl++;
B.—it2;
6C.it3=itl+1:
D.boolisEnd=(itl==s.end());
44.有关函数封象,如下^法中封的的是()。
■A.假如壹种类重载了“()”运算符,该类的封象是函数封象
rB.假如壹种类定义了函数指针组员变量,则该类的封象是函数封象
rC.函数封象类中只能定义组员函数,不能定义组员变量
「D.函数封象类只能定义壹种函数封象
45.有如下两倜类定义:
classAA{};
classBB{
AAvl,*v2;
BBv3;
intv4;
}
其中有壹种组员变量的定义是工昔误的,道彳固变量是()。
A.vl
B.v2
C.v3
D.v4
46.封于如下代码,^指出金昔误的代码行号是()。
1classA(
2public:
3A(inta=0){
4x=a;
5)
6staticvoidfl(){
7x++;
8);
9private:
10intx;
11staticinty;
12);
A.3
B.4
C.7
D.11
47.封于如下代码
1classB{
2public:
3voidf(){)
4voidg()(f();}
5)
6classD:publicB(
7public:
8voidf0(}
9voidg()(B::f())
10)
11intmain(){
12Bb,pb=&b;
13Dd,pd=&d;
14b.f();
15pd->f();
16return0;
17)
其中第M行代码和第15行代码分别调用的是)o
A.B::f()与D::f()
B.B::f()与B::f()
C.D::f()与D::f()
D.D::f()与B::f()
48.如下程序的输出成果是()。
#include<iostream>
usingnamespacestd;
classA{
public:
A(intal,inta2):al(al),a2(a2){}
voidprint();
voidprint()const;
private:
intal,a2;
};
voidA::print(){
cout«al<<"
}
voidA::printOconst{
cout«a2<<"
}
intmain(){
Aa(l,2);
constAb(l,2);
a.print();
b.print();
return0;
)
rA.11
6B,12
C
C.21
D.22
49.有如下程序:
#include<iostrcam>
usingnamespacestd;
classA{
private:
inta;
pubIic:
A(inta=0):a(a){
cout<<T;
A(A&x)
aX.cl;
cout«"2";
)
~A(){
cout«a;
)
intget_a(){
returna;
)
};
intmain(){
Adl(5),d2(dl);
A*pd=newA(8);
cout«pd->get_a();
deletepd;
return0;
}
程序运行畤的输出成果是()。
A.12185
B.1215588
C.128512
*D.1218855
50.有如下程序:
#include<iostream>
usingnamespacestd;
classA{
public:
voidsetA(int);
private:
inta;
};
classB{
public:
voidsetB(int);
private:
intb;
};
classC:publicA,privateB{
public:
voidsetC(int,int,int);
private:
intc;
);
voidA::setA(intx){
a=x;
}
voidB::setB(intx){
b=x;
)
voidC::setC(intx,inty,intz){
setA(x);
setB(y);
c=z;
}
intmain(){
Cobj;
obj.setA(5);//A
obj.setB(6);//B
obj.setC(6,7,9);//C
return0;
}
main函数中()是金昔误的。
A.A^句
'B.B言吾句
C.■吾句
51.设置虚基类的目的是()。
rA.辨别类与否有虚函数
CB.使类成卷抽象类
rC.提高程序运行效率
QD.消除二义性
52.运行畴多态是基于()。
rA.友元函数
'B.虚函数
rC.函数重载
CD.运算符重载
53.C++泛型编程通遇()实现。
C.,
A.class
"B.template
C.virtual
C
I),typedef
54.有关函数申明floatfun(inta,intb)throw,下列论述84的的是()o
A.表明函数抛出float类型异常
「B.表明函数抛出任何类型异常
'•C.表明函数不抛出任何类型异常
CD.^法鳍误
55.有如下两值I程序片段:
#includc<vcctor>
〃程序片段壹
std::vector<int>vec;
for(autoitr=vec.begin();itr!=vec.end();itr++)
itr->print();
〃程序片段二
std::vector<int>vec;
for(autoitr=vec.begin();itr!=vec.end();++itr)
itr->print();
则下列法中,封的的有()。
(a)itr的类型卷auto
(b)程序二性能上要比程序壹更好
(c)程序壹和程序二性能上没有区别
A.ab
&B.b
rCr.ac
CD.c
56.假如X是整型变量,则合法的形式是()。
A.&(X+1)
B.*X
C.翻X
D.&*X
57.判断如下程序的封的性,并阐明原因。
#include<iostream>
usingnamespacestd;
intmainO{
int*first,"second;
first=newint[5];
second=first;
delete1]second;
deletedfirst;
return0;
}
rA.封的,由于first和second都指向勤态内存,需要手勤释放
CB.不封的,应常先释放first指向的内存空间
C.封的,second曾拷贝first的内容
作D.不封的,second和first指向相似的勤态内存,反复释放曾也考午导致未定义
行悬
58.C++中既可以用于文献输入又可以用于文献输出的流类是()。
A.fstream
B.ifstream
C
C.ofstream
rDn.l.ost+ream
59.下列是有关函数模板的程序,则下列者功法中封的的有()。
^include<iostream>
usingnamespacestd;
template<typenameT>voidf(T&i){cout<<"1";}
template<>voidf(constint&i){cout<<"2";|
intniciinO{
inti=42;
f(i);
return0;
}
(a)程序输出1
(b)程序输出2
(c)templateOvoidf(constint&i)显式实例化voidf(constint&)
(d)f(i)隐式实例化函数voidf(int&)
A.ad
B.be
倚r
C.acd
D.bed
60.下列程序的输出卷()。
#include<iostream>
usingnamespacestd;
classShape(
public:
virtualvoidprint(){
cout«"SHAPE"«endl;
}
virtual""Shape(){}
);
classBox:publicShape(
pubIic:
virtualvoidprint(inti){
cout«"BOX"«endl;
};
intmainO{
Shape*s=newBox();
s->print();
deletes;
return0;
)
gA.SHAPE
B.BOX
「C.未定义行卷
1、彳他完毕C++源文献编辑,到生成执行文献,C++编译器必须执行的环节依次卷编译、徒接。
%A.W
CB.籍
C++是强类型^言。
6A.W
rB.籍
3、假如a卷int型变量,b悬int型变量,则a/static_cast<double>(b)的值悬int型。
A.W
6B.$昔
4、数组可以通遇值参数和引用参数两种方式传递给函数。
CA.W
%B.籍
5、常登种函数在运行谩程中产生壹种异常,则造f固函数畲终止,不谩整他程序不壹定终止
运行。
A.B
B.金昔
6、构造函数和析构函数都不能重载。
A.W
6B.籍
7、构造函数可以申明悬虚函数。
rA.W
%B.it
8、已知类X成功地重载了一、=、+和口适几种运算符,其中肯定属于组员函数的运算符是:
和口。
△A.W
rB.
9、在申明壹种封象畤假如使用同壹类类型的另壹种封象来初始化,造畤调用的是该类的拷
贝构造函数。
6A.封
CB.籍
10、C++^言中,既容前修继承,又容器午多继承。
%A.W
rB.®
11、派生类的继承方式有两种:公有继承和私有继承。
rA"
6B.$昔
12、派生类是优基类派生出来的,它不能再生成新的派生类。
「A.W
作B.籍
13、构造函数可以被继承,析构函数不能被继承。
A.W
"B.ig-
14、在公有继承中,基类中的公有组员和私有组员在派生类中都是可冕的。
「A.W
6B.
15、在公有继承中,基类中只有公有组员封派生类封象是可见的。
°AT寸
CB.籍
16、某类的友元类中的所有组员函数可以存取或修改该类的私有组员。
B.
17、多继承状况下,派生类的构造函数的执行次序取决于定义派生类畴所指定的各基类的次
序。
作A.W
rB.
18、虚函数和壹般函数的区别在于函数名字与函数体之间的绑定方式不宜样,壹般函数使用
的是静态绑定,而虚函数使用的是勃态绑定。
1A.W
CB.籍
19、在抽象类中定义的函数只能是纯虚函数。
CA.W
%B.ig-
20、模板封类型参数化提供了很好的支持,类模板实例化畴,编译器将根据给出的模板实参
生成壹种类。
B.
1.算法是壹种计算谩程,是程序设计的基础和精髓。壹种有效的算法应富具有如下特粘,
其中^误的是(),
rA.零值I或多种输入及壹种或多种输出
CB.有效性
作C.辗穷性
r【).确定性
2.#include〈file.h>与#include"file.h”的区别是()。
「A.前者首先徙目前工作途径搜寻并引用file」,而彳炎者首先优原则库的途径寻找和
引用file,h
*B.前者首先拢原则库的途径寻找和引用file,h,而彳爰者首先忧目前工作途径搜寻并
引用file.h
rC.两者都是首先优原则库的途径寻找和引用file.h
CD.两者都是首先优目前工作途径搜寻并引用fib.h
3.^文献中的ifndef/define/endif的作用是()。
rA.定义常量
CB.襟识卷特殊的^文献
QC.防止^文献被反复引用
rD.注释^文献
4.在壹种程序中,假如函数fA调用了函数fB,函数fB又调用了函数fA,那么()。
rA.称卷函数的循环调用
「B.道样调用方式是不容^的
rC.称卷函数的直接递归调用
*D.称卷函数的间接递归调用
5.引入内联函数的目的是卷了()O
A.以便变量的使用
**B.提高函数调用的效率
rC.扩大局部变量的使用范围
「D.节省内存空间
6.函数的参数设置默认值畤,封的的^法是()。
A.若^某壹参数设置了默认值,那么在参数表中其前所有的参数都必须也设置默认
值
*B.若给某壹参数设置了默认值,那么在参数表中其彳爱所有的参数都必须也设置默认
值
「C.幺合函数的参数设置默认值可以提高程序运行效率
「D.任何状况下,函数调用畤均可不列出己设置默认值的参数
7.下列16法封的的是()。
int*pl=newint[10];
int*p2=newint[10]0;
rA.pl和p2申^的空间裹面的值都是随机值
「B.pl和p2申as的空间裹的值都已^初始化
*C.pl申^的空间裹的值是随机值,p2申^的空间裹的值已幺筌初始化
rD.pl申^的空间裹的值已^初始化,p2申^的空间裹的值是随机值
8.按照常理,下列概念可以理解卷封象而不是类的是()。
rA.国际著名学府
CB.国家重钻建设大季
rC.诺贝尔奖获得者
D.杭州肺范大挚
9.在面向射象程序设计中,实现信息隐蔽是靠()O
1A.封象的封装
rB.封象的继承
rC.封象的间接访冏
CD.卦象的分类
10.下列有关类的^法,错误的是()。
CA.在类中,假如不作尤其阐明,所有的数据组员均卷私有数据组员
rB.类是壹种顾客自定义的数据类型
■C.在类中,假如不作尤其阐明,所有的组员均卷公有组员
「I).只有类中的组员函数或类的友元函数才能存取类中的私有数据
11.下面有关类与封象的暂兑法中,误的是()。
rA.封象是类的实例
rB.类和封象的关系与数据类型和变量的关系相似
「C.壹种封象不能同步属于多种没有关系的独立的类
'•D.壹种类只能有壹种封象
12.下列有关构造函数^法,全音误的是()。
「A.构造函数必须与类同名
CB.构造函数必须有返回值
rC.构造函数可以省略不写
「D.在构造函数中可以封类中的组员暹行初始化
13.如下有关析构函数的论述,皓误的是()。
A.析构函数名前必须冠有符号“〜”
B.在壹种类只能定义壹种析构函数
C.析构函数不容用返回值
'•D.析构函数和构造函数同样可以有形参
14.有关类的封象,^法错误的是()。
A.释放封象畤,封应类的析构函数被自助执行
D.在组员函数中,只能访冏组员函数所作用的封象的private组员
rC.射象的组员变量可以是其他类的封象
rD.同类的卦象间,可以互相赋值
15.设已^有A、B、C、D4他类的定义,程序中A、B、C、D析构函数调用次序是()。
Cc;
intmain(){
A*pa=newA();
Bb;
staticDd;
deletepa;
}
A.ABCD
6B.ABDC
C.ACDB
D.ACBD
16.如下^法中封的的是()。
°A.构造函数中可以调用本类的静态组员函数
「B.构造函数和析构函数都可以是虚函数
C.通谩赋值号“二"用壹种封象封另壹种封象暹行赋值,就曾引起复制构造函数的调
用
D.用new运算符勤态创立封象畤,用于初始化该封象的壹定是辗参数的构造函数
17.下列状况中,不畲调用封象析构函数的是()o
0A.将封象指针强行赋值卷NULL畤
「B.函数中定义的勤态封象变量常函数执行^束畤
rC.用delete删除封象指针畤
rD.常封象变量脱离其作用域畤
18.有关类的静态组员,法金音误的是()。
A.在类的静态组员函数中,可以访冏该类的静态组员变量
*B.在类的非静态组员函数中,不可以访冏该类的静态组员变量
「C.不需要创立类的封象,就可以访冏类的静态组员
「D.类的静态组员变量由该类的所有封象共有
19.假设Complex是壹种复数类,下面()将不曾引起拷贝构造函数的调用。
A.Complexci(5);Complexc2(cl);
B.Complexcl(5);Complexc2=cl;
C.Complexcl(5);Complexc2[2]={cl,2};
'D.Complexcl(5),c2;c2=cl;
20.有关常量组员和静态组员,下面^法封的的是()。
「A.优同壹种类模板得到的两彳固模板类可以共享同壹种静态组员
1*B.公有的静态组员在没有封象生成的畴候也能被直接访冏
CC.常量组员函数只有常量封象可以调用
「D.在静态组员函数中不能访冏非静态组员,但可以访冏常量组员
21.下列有关运算符重载的^法中,误的是()。
A.new和delete运算符”『以重载
B.重载运算符不能变化其原有的操作数f®数
'C.三元运算符不能重载
D.所有运算符既可以作卷类的组员函数重载,又可以作卷非组员函数重载
22.若需要卷xv类重载乘法运算符,运算成果卷xv类型,在将其申明卷类的组员函数畴,
下列原型申明封的的是()。
A.xvoperator*(xv,xv);
B.xv*(xv);
p
C.operator*(xv):
6D.xvoperator*(xv);
23.已知体土兄式++a中的“++”是作编组员函数重载的运算符,则与++a等效的运算符函数
调用形式卷()o
A.a.operator++(l)
B.operator++(a)
C.operator++(a,1)
6D.a.operator++(;
24.将运算符重载卷类组员函数畤,其参数表中没有参数,阐明该运算符是()。
rA.不合法的运算符
%B.壹元运算符
rC.辗操作数的运算符
CD.二元运算符
25.将运算符“+”重载卷非组员函数,下列原型申明中,金昔误的是()。
A.MyClockopera:or+(MyClock,long);
p
B.MyClockopera:or+(MyClock,MyCIock);
C.MyCIockopera:or+(long,long);
D.MyCIockopera:or+(long,MyCIock);
26.下列封派生类的描述中,籍误的是().
CA.壹种派生类可作篇另壹种派生类的基类
*B.派生类中继承的基类组员的访冏权限到派生类保持不变
「C.派生类至少有壹种基类
「D.派生类组员除了它自己的组员外,遐包括它的基类组员
27.常派生类优基类公有继承畤,如下^法籍误的是()。
rA.可以把指向派生类封象的指针赋给基类封象的指针
*B.可以用基类封象四派生类封象赋值
「C.可以把派生类封象的地址赋名台基类封象的指针
「D.可以用派生类封象悬基类封象赋值
28.由于如下()原因,在编程实践中很少使用私有继承。
*A.通谩私有继承之彳笈,基类的组员再也辗法在彳爰来的派生类中直接发挥作用
rB.私有继承不能很好的保护基类组员的安全性
「C.私有继承封基类的编写措施有更卷严格的规定
「D.私有继承的性能低于公有继承
29.如下法封的的是()。
rA.通谩指针访冏封象的虚函数畤,所执行的函数体由指针的类型决定
1*B.在基类的函数组员中,可以运用多态机制访冏派生类的组员函数
C.派生类的娄j象中不包括基类的private组员
CD.类B是类A的派生类,若函数f是A的友元,则f也是B的友元
30.类的组员函数中,下列函数中不能卷虚函数的是()。
A.构造函数
B.析构函数
C.运算符重载函数
D.const函数
31.Cl是壹种抽象类,下列^句中籍误的是()。
A.Cl*pC;
6D.voidfun(Clarg);
r*
C.voidfun(Cl*arg);
D.voidfun(Cl&arg);
32.下列有关^法中,封的的是()。
A.类的虚函数中,不能访冏this指针
.B.类的静态组员函数中,不能访冏this指针
rC.类的友员函数中,不能访冏this指针
rD.类的构造函数中,不能访冏this指针
33.有如下类定义:
classAnimal(
publie:
virtualvoidName()=0;
};
classKoala:publicAnimal{
public:
voidNcime(){/*函数体略*/}
};
有关上述类定义,下列描述中籍误的是()。
A.类Koala是类Animal的派生类
B.类Koala中的Name函数是壹种虚函数
C.类Animal中的Name函数是壹种纯虚函数
■D.^句“Animala;"可以建立类An加al的宣科封象a
34.有关基类中的虚函数与壹般组员函数,封的的是()。
「A.虚函数只能定义壹种,而壹般组员函数可以多种
B.虚函数与壹般组员函数在基类中没什么区别
rC.虚函数不能定义函数体,而壹般组员函数可以
rD.虚函数不能被调用,而壹般组员函数可以
35.基类中的虚函数假如在派生类中未重新定义,则曾出现()的状况。
「A.影法使用派生类的封象调用造倜函数
「B.不容^定义派生类的封象
rC.辗法使用基类的封象调用道他函数
'•D.使用派生类的御象调用的仍然是基类的道他函数
36.有关抽象类,下列^法封的的是()。
「A.纯虚函数与虚函数的申明^法相似
「B.可用new操作符来生成抽象类的封象
1*C.带有纯虚函数的类称卷抽象类
37.下面有关封装、继承、多态的描述,言兑法令昔误的是()。
A.封装是指把客观事物封装成抽象的类,类的数据和函数只让可信的类或卦象操作,
不可信的则信息隐藏
rB.继承可以使用既有类的所有功能,井在辗需重新编写本来的类的状况下封道些功
能暹行扩展
「C.隐藏是指派生类中的函数把基类中相似名字的函数屏蔽掉了
*D.覆盖是指不壹样的函数使用相似的函数名,不遇函数的参数他数或类型不壹样
38.有关函数模板,下列^法封的的是()。
A.壹种函数模板可以自勤处理所有类型的数据
*B.只有可以暹行函数模板中运算的类型,才可以作卷类型实参
rC.自定义的类,不需要重载模板中得运算符,也可以作卷类型实参
39.下面()派生是不可行的。
A.优类模版派生出类模版
「B.优模版类派生出类模版
'•C.优类模版派生出壹般类
「D.优壹般类派生出类模版
40.下面的法中封的的是()。
*A.将壹种封象放入STL中的容器寰畤,实际上被放入的是该封象的壹种拷贝(副本)
「B.构造函数不可以重载
rC.const组员函数内部不能修改组员变量的值,不遇可以调用非const组员函数
「D.只有定义畴用了virtual关键字的组员函数才是虚函数
41.下列有关容器的end()组员函数的功能,封的的是()。
CA.判断与否卷容器末尾
「B.返回最终壹种元素的引用
rC.返回指向最终壹种元素的迭代器
“D.返回指向最终壹种元素下壹种位置的迭代器
42.下列有关送代器,^法行的的是()。
「A.迭代器不直接操作容器中的数据,而是通谩算法间接操作
「B.算法和迭代器之间不是互相独立而是互相依赖的
"C.迭代器是算法和容器的桥梁
43.STL的算法模板binary_search可用于下列哪类容器()。
A.map
B.vector
rr.
C.set
D.list
44.如下封于map的使用中,可以封的输出15的是()0
「A.
map<int,int>maps;
maps,insert(10,15);
cout«maps,find(10)->second«endl;
a
D.
map<int,int>maps;
maps,insert(pair<int,int>(10,15));
cout«maps,find(10)->second«endl;
rC.
map<int,int>maps;
maps,insert(pair(10,15));
cout«maps.find(10)->second«endl;
45.若要使下面程序片段可以编译通遇,封于类A,如下()运算符不是必须有定义
的。
classA{/*类体略*/};
Aobj;
inta[]={1,2,3,4,5);
copy(a,a+5,obj);
A.++obj
B.—obj
C.*obj
D.以上三彳固都可以没定义
46.在已^包括^文献的状况下,下列文献操作的程序片段在三吾法上封的的是()O
rA.
intx-0;
ifstreammyfile;
myfile.open("a");
myfile«x;
if(myfile.eof())
cout<<x<<endfile«endl;
rB.
intx=0;
ifstreammyfile('a');
myfile»x;
if(myfile.eof())
cout<<x«endoffile«endl;
rC.
intx0;
ifstreammyfile;
myfile.Open("a");
myfile»x;
if(myfile.eof())
cout«x<<endoffile"«endl;
6
D.
intx=0;
ifstream
myfile»x;
if(myfile.eof())
cout«x<<endoffile”«endl;
47.下列程序的输出成果是()o
#include<iostream>
usingncimespacestd;
classMyClass{
public:
MyClass(inti=0){
cout<<i;
)
MyClass(constMyClass&x){
cout<<2;
)
MyClass&operator=(constMyClass&x){
cout«3;
return*this;
}
^MyClass(){
cout<<4;
}
};
intmainO{
MyClassobjl(1),obj2(2);
MyClassobj3=objl;
returnO;
}
A.11214444
B.11314444
6C.122444
I).123444
48.下列程序的输出成果是()。
inc1ude〈iostream〉
usingnamespacestd;
classBcise{
public:
voidprint(){cout<<'B';}
classDerived:publicBase{
public:
voidprint(){cout<<'D';}
intmain(){
Derived*pd=newDerived();
Base*pb=pd;
pb->print();
pd->print();
deletepd;
return0;
A.DD
B.DB
6C.BD
D.DD
49.下列程序的输出成果是()。
#include<iostream>
classBase
public:
virtual~Base();
Base::^Base0{
cout<<"Base
}
classDerived:publicBase{
public:
virtual'Derived。;
};
Derived::^Derived(){
cout<<"Derived”:
)
voidfun(Base*b){
deleteb;
)
intmainO{
Base*b=newDerived。;
fun(b);
return0;
}
rA..Bpase
B.Derived
®C.DerivedBase
50.下列程序的输出成果是().
classA{
public:
voidFuncAO{
cout«”FuncAcalled\n*;
}
virtualvoidFuncB(){
cout«”FuncBcallcd\n,z;
}
};
classB:publicA{
public:
voidFuncAO{
A::FuncAO;
cout«”FuncABcalled\n/,;
}
virtualvoidFuncBO{
cout«”FuncBBcalled'n";
}
};
intmain(){
Bb;
A*pa;
pa=&b;
A*pa2=newA;
pa->FuncA();
pa->FuncB();
pa2->FuncA();
pa2->FuncB();
deletepa2;
return0;
)
「A.
FuncAcalled
FuncBcalled
FuncAcalled
FuncBcalled
GB.
FuncAcalled
FuncBBcalled
FuncAcalled
FuncBcalled
rC.
FuncAcalled
FuncBBca11e(l
FuncABcalled
FuncBBcalled
rD.
FuncABcalled
FuncBBcalled
FuncAcalled
FuncBcalled
51.下列有关构造组合类封象畤的初始化次序法金首误的是()。
「A.处理完初始化列表之彳爰,再执行构造函数的函数体
rB.组员封象构造函数调用次序:按组员封象的申明次序,先申明者先构造
rC.首先封构造函数初始化列表中列出的组员诞行初始化,初始化次序是组员在类体
中定义的次序
「•D.初始化列表中未出现的组员封象,不暹行初始化
52.运算符重载是封已^有的运算符赋予多重含义,下列^法封的的是()。
rA.可以封基本类型(如int类型)的数据,重新定义“+”运算符的含义
「B.可以变化已^有运算符的优先级和其操作数值数
''C.只能重载C++中已^有的运算符,不能定义新运算符
D
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年保安证考试科目要点试题及答案
- 企业安全隐患试题及答案
- 适应变化保安证考试试题及答案
- 保安证考试工作总结与试题及答案
- 停车场智能监控管理系统
- 隐患排查与整改知识试题及答案
- 滁州职业技术学院《物流运筹学II》2023-2024学年第二学期期末试卷
- 2025年黑龙江省高中名校高三下学期自测卷(一)线下考试数学试题含解析
- 内蒙古体育职业学院《行书创作》2023-2024学年第二学期期末试卷
- 2025年化学模拟试题及答案观测
- GB/T 10781.4-2024白酒质量要求第4部分:酱香型白酒
- 上海市文来中学2024届毕业升学考试模拟卷数学卷含解析
- 六年级奥数典型题-冲刺100测评卷10《工程问题》(原卷版)
- 人教版八年级下册数学期末40道压轴题训练(原卷版)
- 2024年全国国家版图知识竞赛题库(中小学组)
- CHT 9017-2012 三维地理信息模型数据库规范(正式版)
- 反恐维稳领域的科技赋能
- CHT 3006-2011 数字航空摄影测量 控制测量规范
- 2024年中国卫星网络集团有限公司招聘笔试冲刺题(带答案解析)
- 人教版物理八年级下册实验复习总结
- JJG 270-2008血压计和血压表
评论
0/150
提交评论