面向对象复习资料

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

复习资料模拟题一

一、单项选择题

1.C++对C语言作了很多改进,即从面向过程变成为面向对象的主要原因是( )

A.增加了一些新的运算符

B.允许函数重载,并允许设置缺省参数

C.规定函数说明符必须用原型

D.引进了类和对象的概念

2.下列符号不能组成标识符的是( )

A.连接符

B.下划线

C.大小写字母

D.数字字符

3.类型修饰符unsigned不能修饰( )

A. char

B. int

C. long int

D. float

4.在int a=3,int *p=&a;中,*p的值是( )

A.变量a的地址值

B.无意义

C.变量p的地址值

D.3

5.下列关于指针的操作中,错误的是( )

A.两个同类型的指针可以进行比较运算

B.可以用一个空指针赋给某个指针

C.一个指针可以加上两个整数之差

D.两个同类型的指针可以相加

6.重载函数在调用时选择的依据中,错误的是( )

A.函数的参数

B.参数的类型

C.函数的名字

D.函数的类型

7.一个函数功能不太复杂,但要求被频繁调用,选用( )

A.内联函数

B.重载函数

C.递归函数

D.嵌套函数

8.下列不是描述类的成员函数的是( )

A.构造函数

B.析构函数

C.友元函数

D.复制构造函数

9.构造函数不具备的特征的是( )

A.构造函数的函数名与类名相同

B.构造函数可以重载

C.构造函数可以设置默认参数

D.构造函数必须指定类型说明

10.通常,拷贝构造函数的参数是( )

A.某个对象名

B.某个对象的成员名

C.某个对象的引用名

D.某个对象的指针名

11.继承机制的作用是( )

A.信息隐藏

B.数据封装

C.定义新类

D.数据抽象

12.类的析构函数的作用是( )

A.一般成员函数

B.类的初始化

C.对象的初始化

D.撤消对象时所做的清理工作

13.类的析构函数是在( )调用的。

A.类创建时

B.创建对象时

C.删除对象时

D.不自动调用

14.在( )情况下适宜采用inline定义内联函数。

A.函数体含有循环语句

B.函数体含有递归语句

C.函数代码少、频繁调用

D.函数代码多、不常调用

15.如果类A被说明成类B的友元,则( )

A.类A的成员即类B的成员

B.类B的成员即类A的成员

C.类A的成员函数不得访问类B的成员

D.类B不一定是类A的友元

二、填空题

1.对象的三大基本特性是多态性、___ ____、封装性。

2.C++语言的函数参数传递方式有传值和____ ___。

3.重载赋值操作符时,应声明为___ ____函数。

4.用__ _____声明的基类称为虚基类。

5.用_____ __声明函数称为虚函数。

6.派生类对基类继承控制访问有三种。派生类可以定义其基类中不具备的___ ____。

7.静态成员是对象的成员,__ _____函数不是类的成员。

8.在函数体之前加___ ____关键字可以防止覆盖函数改变数据成员的值。

9.一个const对象只能访问__ _____成员函数。

10.使用友元函数是为了提高程序效率,且节约了___ ____开销。

三、完成程序题

1.完成下面类中的成员函数的定义。

class test{

private:

int num;

float x;

public:

test(int n,float f);

test(test&);

};

test::test(int n,float f)

{num=n;

_______;

}

test::test(text& t)

{

_______;

x=t.f1;

}

2.根据下面的主程序,完成类说明的最小形式(不要求实现成员函数的定义)。

#include

class base

{

private:

_______;

public:

_______;

};

void main()

{

base try(6);

}

3.一个类的头文件如下所示,程序main产生对象T,且T.num=10,并使用P( )函数输出这个对象的值。

class test{

private:

int num;

public:

test(int);

void show();}

test::test(int n){ num=n;}

test::P(){cout<

#include

void main()

{

_______;

_______;

}

四、综合应用题

1.分析下列程序可能的输出结果。

class test{

private:

int num;

public:

test();

int TEST() {return num;}

~test();

相关文档
最新文档