面对象设计复习题.docx
- 文档编号:4560862
- 上传时间:2022-12-06
- 格式:DOCX
- 页数:14
- 大小:18.76KB
面对象设计复习题.docx
《面对象设计复习题.docx》由会员分享,可在线阅读,更多相关《面对象设计复习题.docx(14页珍藏版)》请在冰豆网上搜索。
面对象设计复习题
面对象设计复习题
一、选择题:
1.下列哪项不是面向对象程序设计的主要特征d
a.封装b.继承c.多态d.结构
2.若给出声明:
constcharcc=‘a’;
char*pc;
constchar*pcc;
charc=‘b’;
char*constcpc=&c;
下面的赋值表达式哪个是合法的
a.pc=&cc;b.pcc=&cc;c.cpc=pc;d.cc=’f’;
3.C++程序的执行总是从哪里开始的
a.main函数b.头文件c.第一行d.函数注释
4.下面对类和对象的描述不正确的是:
a.对象是类的一个实例b.任何一个对象都归属于一个具体的类
c.一个类只能有一个对象d.类与对象的关系和数据类型与变量的关系相似
5.以下哪个不是循环语句
a.while语句b.do-while语句c.for语句d.if-else语句
6.按照标识符的要求,下列符号哪个不能组成标识符
a.下划线b.连接符c.大小写字母d.数字字符
7.已知:
intm=10;在下列表示引用的方法中,哪个是正确的
a.int&x=m;b.int&y=10;c.int&z;d.float&t=&m;
8.以下有关类与结构体的叙述不正确的是:
a.结构体中只包括数据;类中封装了数据和操作
b.结构体的成员对外界通常是开放的;类的成员可以被隐蔽
c.用struct可以声明一个类型名;而class可以声明一个类名
d.结构体成员默认为private;类成员默认为public
9.下列哪个不是构造函数的特征
a.构造函数的函数名与类名相同b.构造函数可以重载
c.构造函数可以设置缺省参数d.构造函数必须指定返回值类型
10.已知:
类A中一个成员函数说明如下:
voidSet(A&a);其中,A&的含义是什么
a.指向类A的指针为ab.将a的地址值赋给变量Set
c.a是类A对象的引用,用来作函数Set()的参数
d.变量A与a按位与作为函数Set()的参数
11.在一个函数中,要求通过函数来实现一种不太复杂的功能,并且要求加快执行速度,选用下列哪个函数
a.内联函数b.重载函数c.递归调用d.嵌套调用
12.已知:
print()函数是一个类的常成员函数,它无返回值,下列表示中,哪个是正确的
a.voidprint()const;b.constvoidprint();
c.voidconstprint();d.voidprint(const);
13.以下能对对象进行初始化的是:
a.构造函数b.析构函数c.友元函数d.静态成员函数
14.关于虚函数的描述中,哪个是正确的
a.虚函数是一个static类型的成员函数b.虚函数是一个非成员函数
c.基类中说明了虚函数后,派生类中其对应的函数可不必说明为虚函数
d.派生类的虚函数与基类的虚函数具有不同的参数个数和类型
15.设有以下类的定义:
classTemp{
intx;
public:
voidsetx(intt=0);
};
若在类外定义成员函数setx(),以下定义形式中正确的是哪个
setx(intt){…}Temp:
:
setx(intt){…}
void:
:
setx(intt){…}Temp:
:
setx(intt=0){…}
16.以下关于函数重载的要求,哪个叙述不正确
a.函数名相同b.函数参数个数不同c.函数返回值类型不同
d.函数参数个数相同但参数类型至少有一个不同
17.已知:
classA{
private:
inta,b;
floatc;
public:
voidfunc1(int,int);
friendintgetData();
};
则类A分别有几个数据成员和成员函数
a.2,2b.3,2c.2,1d.3,1
18.已知:
inta,*pa;
char*p=”Ilikecomputer!
”;
关于运算符new和delete的使用,下列表达式哪个是正确的
a.a=newint;b.deletep[12];c.pa=newint(10);d.p=newint[12];
19.对于类A而言,已知函数A:
:
A(constA&a);则该函数是类A的什么函数
a.内联函数b.友元函数c.拷贝构造函数d.类型转换函数
20.下面类的定义中哪个地方是不正确的
classexample{
floatx;
public:
example();(a)
example(int,float);(b)
operatorint();(c)
~example();
constinty=23;(d)
};
二、填空题:
1.在C++中,函数的参数有两种传递方式,它们是值传递和(引用传递)。
2.当一个成员函数被调用时,该成员函数的(this指针)指向调用它的对象。
3.在C++类中,const关键字可以修饰对象和成员函数,const对象不能(调用非const的普通成员
函数),const成员函数不能(修改)。
4.在C++类中,有一种不能定义对象的类,这样的类只能被继承,称之为(抽象类),定义该
类至少具有一个(纯虚函数)。
5.描述命题"A小于B或小于C"的表达式为(a
6.在基类和派生类中,派生类可以定义其基类中不具备的数据和操作。
对两个有相同名字的数据成员进行访问时,如果没有(类名和作用域分辨符),对此数据成员的访问将出现歧义。
7.静态数据成员在类外进行初始化,且静态数据成员的一个拷贝被类的所有对象(共用)。
8.面向对象的程序设计有四大特征,它们是抽象、封装、(继承)、(重载)。
9.在C++中,构造派生类对象时,总是先从(基类)的初始化开始的。
10.类是用户定义的类型,具有类类型的变量称作(对象)。
11.静态的成员函数没有隐含的(this指针),所以,它们只能访问静态的数据成员。
12.构造函数与析构函数除功能不同外,在定义形式上,它们的区别还包括构造函数名与类名相同,
而析构函数名是在类名前加一个~、(无参数)、(不能重载)。
13.在公有派生的情况下,基类数据成员在派生类中的访问权限(不变)。
三、看程序写结果:
1.#include<>
classExample{
inta,b;
public:
Example()
{a=b=0;
cout<<"Thisisanexample!
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 面对 设计 复习题
![提示](https://static.bdocx.com/images/bang_tan.gif)