自测题 - 8(面向对象一)(答案)

更新时间:2024-04-25 06:50:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

C/C++测试题 面向对象

选择题: C++概述

1、以下C++新增的关键字为 。 A break B continue C stuct D inline //答案:D

2、面向对象程序设计将数据与______放在一起,作为相互依存、不可分割的整体来处理。 A对数据的操作 B信息 C数据隐藏 D数据抽象 //答案:A

3、面向对象程序设计优于传统的结构化程序设计,其优越性主要表现在,它有希望解决软件工程的两个主要问题:软件复杂性和______。

A 软件生产率的提高 B 精化已有的代码 C 共享代码 D 编写可重用代码 //答案:A

4、面向对象系统的______是一种信息隐藏技术,目的在与将对象的使用者与设计者分开,使用者不必知道对象行为实现的细节,只需用设计者提供的协议命令对象去做即可。 A多态性 B封装性 C继承性 D复用性 //答案:B

5、______不是面向对象系统所包含的要素 A重载 B对象 C类 D继承 //答案:A

6、关于C++与C语言的关系的描述中,______是错误的。

A C语言是C++的一个子集 B C++与C语言是兼容的

C C++对C语言进行了一些改进 D C++与C语言都是面向对象的 //答案:D

7、下面关于对象概念的表述中,______是错误的。 A 对象就是C语言中的结构变量

B 对象代表着正在创建的系统中的一个实体 C 对象是一个状态和操作(或方法)的封装体 D 对象之间的信息传递是通过信息进行的 //答案:A

8、下面关于类概念的表述中,______是错误的。

A 类是抽象数据类型的实现 B 类是具有共同行为的若干对象的统一描述体 C 类是创建对象的样板 D 类就是C语言中的结构类型

//答案:D

9、下列关于C++类的描述中错误的是______。 A 类与类之间可以通过一些手段进行通信和联络 B 类用于描述事物的属性和对事物的操作

C 类与类之间必须是平等关系,而不能组成层次关系 D 类与类之间可以通过封装而具有明确的独立性 //答案:C

10、下列关键字中,_______既在C语言中使用,又在C++语言中使用 A inline B break C private D public //答案:B

11、C++对C语言做了很多改进。下列描述中______使得C语言发生了质变,即从面向过程变成了面向对象

A增加了一些新的运算符 B允许函数重载,并允许设置默认参数 C规定函数说明必须用原型 D引进了类和对象的概念 //答案:D

12、下列C++标点符号中表示行注释开始的是______。 A # B ; C // D } //答案:C

13、下列关于C++与C语言关系的描述中错误的是______。

A C++是C语言的超集 B C++对C语言进行了扩充 C C++|与C语言都是面向对象的程序设计语言 D C++包含C语言的全部语法 //答案:C

14、下列正确的选项是______________。

A 继承是创建一个具有另一个类的属性和行为的新类的能力 B C语言支持面向对象的程序设计 C 空白符是一种可以被编译的符号

D 标识符不宜太长,一般设定为16个字符 //答案:A

15、下列关于多态说法错误的是_________。

A 不同的对象调用相同名称的函数,并可导致完全不同的行为的现象称为多态性 B C++语言中多态性通过使用封装技术来支持 C 多态是面向对象程序设计的一个重要机制 D 多态是人类思维方式的一种模拟 //答案:B

类和对象

16、以下类的说明,请指出错误的地方________。 Class CSample { int a = 2; (A) CSample(); (B) Public: CSample(int val); (C) ~CSample(); (D) }

//答案:A

17、有关类的说法不正确的是________。 A 类是一种用户自定义的数据类型

B 只有类中的成员函数才能存取类中的私有数据

C 在类中,如果不做特别说明,所有的数据类型均为私有类型 D 在类中,如果不做特别说明,所有的成员函数均为公有类型 //答案:D

18、有关类和对象的说法下列不正确的有________。

A 对象是类的一个实例 B 任何一个对象只能属于一个具体的类

C 一个类只能有一个对象 D 类与对象的关系和数据类型和变量的关系 //答案:C

19、关于类和对象,以下叙述正确的是______ A 一个类的成员函数可以任意调用

B 通常,只有通过具体的对象,才能访问类的成员函数 C 对象是模板,类是实例 D 类和对象间没有任何关系 //答案:B

20、有关构造函数的说法不正确的是________。

A 构造函数名字和类的名字一样 B 构造函数在说明类变量时自动执行 C 构造函数无任何函数类型 D 构造函数有且只有一个 //答案:D

21、有关析构函数的说法不正确的是________。 A 析构函数有且只有一个 B 析构函数无任何函数类型

C 析构函数和构造函数一样可以有形参

D 析构函数的作用是在对象被撤销时收回先前分配的内存空间 //答案:C

22、在类的定义体外定义成员函数时,需要在函数名前加上________。

A 类标记 B 类域标记 C 类对象 D 域运算符 //答案:B

23、在类的定义形式中,数据成员、成员函数和_______组成了类定义体。 A 成员的访问控制消息 B 公有消息 C 私有消息 D 保护消息 //答案:A

24、________的功能使对对象进行初始化。

A 析构函数 B 数据成员 C 构造函数 D 静态成员函数 //答案:C 25、若Q是类,a是它的一个对象,p1是类对象a的一个指针,那么类对象a可以通过①_______来访问类的成员,类对象a的指针p1可以通过②_______来访问类的成员。 A :: B . C ; D -> //答案:①B ②D

26、下列的各类函数中,_________不是类的成员函数

A 构造函数B 析构函数 C 友元函数 D 拷贝初始化构造函数 //答案:C

27、通常拷贝初始化构造函数的参数是__________。

A 某个对象名 B 某个对象的成员名 C 某个对象的引用名 D 某个对象的指针名 //答案:C

28、类模板的使用实际上是将类模板实例化成一个具体的_______。 A 类 B 对象 C 函数 D 模板类 //答案:A

29、模板是实现类属机制的一种工具,其功能非常强大,它既允许用户构造类属函数,既① _______;也允许用户构造类属类,即② ________。 A 函数模板 B模板函数 C 类模板 D 模板类 //答案: ①B ②D

30、关于对象的this指针,以下叙述正确的是______

A 必须显式地在类定义中声明this数据成员,才能使用this指针 B 一旦生成一个对象,该对象的this指针就指向该对象本身 C 一个类的所有对象的this指针的值都是相同的

D 不能通过对象的this指针访问对象的数据成员和成员函数 //答案:B

31、关于new运算符的下列描述中, 是错误的。 A 它可以用来动态创建对象和对象数组

B 使用它创建的对象或对象数组,可以使用运算符delete删除 C 使用它创建对象时要调用构造函数

D 使用它创建对象数组时必须指定初始值 //答案:D

32、关于delete运算符的下列描述中, 是错误的。 A 它必须用于new返回的指针 B 它也适用于空指针

C 对一个指针可以使用多次该运算符

D 指针名前只用一对方括号,不管所删除数组的维数 //答案:C

本文来源:https://www.bwwdw.com/article/h3gp.html

Top