一套编程题 选择题101-140

101.   已知X类.则当程序执行到语句
X  array[3];时,调用了(	)次构造函数.
A、0
B、1
C、2
D、3
答案:D
解析:每一个数组元素都会调用类的构造函数

102.  类模板的模板参数(	).
A、只可作为数据成员的类型
B、只可作为成员函数的返回类型
C、只可作为成员函数的参数类型
D、以上三者皆可
答案:D

103.   下列(	)不是构造函数的特征
A、构造函数的函数名与类名相同
B、构造函数可以重载
C、构造函数可以设置默认参数
D、构造函数必须指定类型说明
答案:D

104.   下列程序中说明的公有成员是(	).
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、都是
答案:D
解析:只要有public访控属性的成员都是共有成员,跟在类定义中的位置没有任何关系。

105.   类定义的内容允许被其他对象无限制地存取是( C	).
A、private 部分
B、protected 部分
C、public 部分
D、以上都不对
答案:C

106.   关于下面程度段说法正确的是(	).
class X
{
private:
  		int n;
punblic:
  		X(X&);
}
X::X(X&x)
{n=x.n}
X obj1,obj2;
obj2(obj1);
A、语句obj2(obj1);的功能是用对象obj1初始化具有相同类类型的对象obj2
B、语句obj2(obj1);的功能是用对象obj2初始化具有相同类类型的对象obj1
C、 X(X&x)也可以不使用引用参数而仍然是拷贝构造函数
D、 X(X&x)不能访问对象的私有成员
答案:A

107.   this指针是C++实现(	)的一种机制.
A、抽象
B、封装
C、继承
D、重载
答案:B

108.   下面程序段中是内联函数的是(	)。
  	chass location
{
private:
int x ,y;
public:
void init(int initx,int inity)
{     
x=initx;
y=inity;
}
int getx(){return x;}
int gety();
};
inline int location::gety(){return y;}
A、 init (int initx,int inity)
B、 getx(),gety()
C、 A和B都是
D、 A和getx()
答案:C
解析:在类定义时实现的成员函数,默认为inline函数

109.   关于对象成员的构造函数的调用顺序,说法正确的是(	C )。
A、与他们在成员初始化列表中给出的顺序相同
B、与折构函数的调用顺序相同
C、与他们在类中说明顺序相同
D、以上说法都不对
答案:C

110.   类摸板trmplate<class T>classX{……},其中,友元函数f()成为该类模板实例化的每个模板类的友元,则其说明应为(	).
A、friend voidf()
B、frieng void f(X<T>&);
C、friend void A::f();
D、friend void C<T>::f(X<T>&);
答案:A

111.运算符—>*的功能是(	)。
A、用来表示指向对象指针对指向类成员指针的操作。
B、用来表示对象类成员的操作。
C、用来表示指向对象指针对类成员的操作。
D、用来表示对象指向类成员指针的操作。
答案:A

112.下列说明中
const char * ptr;
ptr 应该是(	)。
A、指向字符的指针
B、指向字符的常量指针
C、指向字符串常量的指针
D、指向字符串的常量指针
答案:C

113.下面关于友元的描述中,错误的是(	)。
A、友元函数可以访问该类的私有数据成员。
B、一个类的友元类中的成员函数都是这个类的友元函数。
C、友元可以提高程序的运行效率。
D、类与类之间的友元关系可以继承。
答案:D

114.一个(	)允许拥护为类定义一种模式,使得类中的某些数据成员、某些成员函数底参数和
返回值可以取任意数据类型。
A、函数模板
B、模板函数
C、类模板
D、模板类
答案:C

115.有关构造函数说法不正确的是(	)
A、构造函数的名字和类的名字一样。
B、在创建对象时,系统自动调用构造函数
C、构造函数无任何函数类型
D、构造函数有且只有一个
答案:D

116.下面对模板的声明,正确的是(	)
A、template<T>
B、template<class T1,T2>
C、template<classT1,classT2>
D、template<classT1;classT2>
答案:C

117. (	)是析构函数的特征。
A、析构函数可以有一个或多个参数
B、析构函数定义只能在类体内
C、析构函数名与类名不同
D、一个类中只能定义一个析构函数
答案:D

118.类模板template<class T>class X{…..};,其中友元函数f对特定类型T(如 int),使函数f(X<int>&)成为X<int>模板类的友元,则其说明应为()
A、friend coid f();
B、friend coid f(X<T>&);
C、friend coid A::f();
D、friend coid C<T>::f(X<T>&);
答案:B

119. 若函数是在运行激活的,则该函数称为(	)
A、内联函数
B、非内联函数
C、成员函数
D、静态成员函数
答案:B

120.在C++程序中,对象之间的象话通信通过(	)
A、继承实现
B、调用成员函数实现
C、封装实现
D、函数重载实现
答案:B
121.在类的定义形式中,数据成员、成员函数和(    )组成了类定义体。
A) 成员的访问控制信息
B) 公有消息
C) 私有消息
D)保护消息
答案:A

122.对于任意一个类,析构函数的个数最多为(        )
A) 0
B) 1
C) 2
D)3
答案:B

123.(      )的功能是对对象进行初始化。
A) 析构函数
B) 数据成员
C) 构造函数
D)静态数据成员
答案:C

124.友元关系不能(        )
A) 继承
B) 是类与类之间是关系
C) 是一个类的成员函数与另一个类的关系
D)提高程序的运行效率
答案:A
继承是类与类之间的关系

125.(      )只能访问静态成员变量,静态成员函数和类以外的函数和数据不能访问类中的非静态成员变量。
A) 静态函数
B) 虚函数
C) 构造函数
D)析构函数
答案:A

126.下面说法正确的是(     )
A) 内联函数在运行时是将该函数的目标代码插入每个调用该函数的地方
B) 内联函数在编译时是将该函数的目标代码插入每个调用该函数的地方
C) 类的内联函数必须在类体内定义
D)类的内联函数必须在类体外关键字inline定义
答案:B

127.下列关于成员访问权限的描述中,不正确的是(     )
A) 公有数据成员和公有成员函数都可以被类对象直接处理
B) 类的私有数据成员只能被公有成员函数以及该类的任何友元类或友元函数访问
C) 保护成员在派生类中可以被访问,而私有成员不可以
D)只有类或派生类的成员函数和友元类或友元函数可以访问保护成员
答案:B

128.局部变量可以隐藏全局变量,那么在有同名全局变量和局部变量的情形时,可以用(     )
提供对全局变量的访问
A) 域运算符
B) 类运算符
C) 重载
D)引用
答案:A

129.缺省析构函数的函数体是(     )
A)不存在
B)随机产生的
C)空的
D)无法确定的、
答案:C

130.在下列关键字中,用以说明类中共有成员的是(        )
A) public
B) private
C) protected
D)friend
答案:A

131.下面说法中正确的是(    )
A) 一个类只能定义一个构造函数,但可以定义多哥析构函数
B) 一个类只能定义一个析构函数,但可以定义多个构造函数
C) 构造函数与析构函数同名,知识名字前加了一个求反符号(~)
D)构造啊函数可以指定返回类型,而析构函数不能指定任何返回类型,即使是void类型也不可以
答案:B

132.关于delete 运算符的下列描述中,(    )是错误的。
A) 它必须用语new返回的指针
B) 它也适用于空指针
C) 对一个指针可以使用多次该运算符
D)指针名前只用一队方括号符,不管所删除数组的维数
答案:C

133.关于成员函数的特征的下述描述中,错误的是(      )
A) 成员函数一定是内联函数
B) 成员函数可以重载
C) 成员函数可以设置参数的默认值
D)成员函数可以是静态的
答案:A

134.假定x为一个类,执行Xa[3],*p[2];语句时会只动调用该类的构造函数(    )次
A) 2
B) 3
C) 4
D)5
答案:B

135.由于数据隐藏的需要,静态,数据成员通常被说明为(   )
A) 私有的
B) 公有的
C) 保护的
D)不可访问的
答案:A

136.假定X为一个类,则该类的拷贝构造函数的声明语句为(     )
A) My Class(My Class x)
B) My Class&(My Class x)
C) My Class(My Class &x)
D)My Class(My Class *x)
答案:C

137.Main()函数在执行之前不可以调用其构造函数的(    )
A) 全局对象
B) 静态对象
C) 在main()函数体内说明的对象
D)全局对象数组
答案:C

138.对于常成员函数,下列描述正确的是(   )
A)常成员函数只能修改常数据成员
B)常成员函数只能修改一般数据成员
C)常成员函数不能修改任何数据成员
D、_成员函数只能通过常对象调用
答案:C

139.友元的作用是(     )
A)提高程序是运行效率
B)加强类的封装性
C)实现数据的隐藏性
D、增加成员函数的种类
答案:A

140.一个类的友元函数或友元类能够通过成员操作符访问该类的(     )
A) 私有成员
B) 公有成员
C) 保护成员
D)公有成员、保护成员和私有成员
答案:D

 

  • 1
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值