C++程序设计练习题与答案

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

C++g 序设计练习题

一、填空题

1.对象的三大基本特性分别为多态性、 ( ) 、封装性。

2.赋值运算符应重载为 ( ) 函数。

3.用 ( )声明的基类称为虚基类。 4.用 (

)声明的函数称为虚函数。

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

)。

6.静态成员是对象的成员, ( )函数不是类的成员。 7.在函数体之前加 (

)关键字可以防止覆盖函数改变数据成员的值。

8.一个 const 对象只能访问 ( ) 成员函数。

9.使用友元函数是为了提高程序效率,且节约了

(

)开销。

10.

类名为“ ClassName ”的类,其拷贝构造函数的原型说明是

( )。

11.由关键字 private 、public 和 protected 限定成员的访问权限分别是 (

)、(

)和(

)。缺

省关键字时成员的访问权限为 ( )。

12. 如果想要公共基类在派生类中只有一个拷贝,就要将公共的基类说明为

默认构造函数,就必须在每一个派生类的构造函数中都要调用虚基类的

( 13.

静态成员函数是使用关键字 ( )说明的成员函数。

14.

一个函数的原型声明为“ void FunName(int=0, double=0, char='x'); ”,则

调用 FunName 函数的方法

共有 (

)种。

15.

编译时多态性是通过 (

)实现的;运行时多态性是通过 ( )实现

的。

16.

C++通过(

)实现编译时多态性,通过 ( )实现运行时多态性。

17•在C++中,声明类的关键字是( )。 18 .声明C++模板的关键字是(

)。

19. 调用函数原型声明为“

void FunName(short,

int=0, float=1.0); ”的方法有 ( )种。

20. 处理 C+ +异常的方法:采用 ( )结构。

21 .用关键字 (

)、(

)和(

)限定的成员,其访问权限分别为:公有的、私有的和保护的。 缺省关键字时,成员的访问权限为 (

)。

22. 在 C++ 中,处理 ( )的方法是采用 try-catch 结构。

23. 在 C++ 中,用关键字 ( )说明内置函数。

24. 在 C++ 中,声明友元函数的关键字是 (

)。

25.

将公共基类说明为 ( )时,多重派生过程中公共基类在派生类中就只有一个拷

贝了。

26.

在 C++ 中,如果函数调用在前、定义在后,就必须先对函数进行 (

)。

27.

在成员函数头之后、函数体之前加 ( )修饰的成员函数称为类的常

成员函数。

28.

包含纯虚函数的类称为抽象类,这种类只能用作 ( )

来派生新类。由于抽象类的特殊性,我们 可以说明抽象类的 (

),但不能说明抽象类的 (

)。

29.

说明函数类型为“ double ”、函数名为“ vifun ”且无参数的纯虚函数的表达形式为

( )。

30.

说明静态成员要使用关键字 ( )。

(

);如果虚基类没有

)函数。

31 .当函数调用在前定义在后时,必须先对函数进行( )说明。

32.类名为“ ClassN”的类的拷贝构造函数的函数原型说明为( )。

33.抽象类是包含( )的类,必须注意:不能说明抽象类的( ),但可说明抽象类的( )。

34.流插入运算符<<只能重载为友元函数,重载流插入运算符<<的函数名为( )。

35.要防止在该成员函数中改变数据成员的值,就要在类的成员函数名之后、函数体之前加上关键字

36.类和对象的关系可表述为:类是对象的 ( ),而对象则是类的 ( )。

37.在 C++ 中,三种继承方式的说明符号为 (

)、(

)和(

),如果不加说明,则默认的继

承方式为 ( ) 。

38.如果只想保留公共基类的一个复制,就必须使用关键字 (

)把这个公共基类声明为虚基类。

39.若要把 void myfun( ) 定义为类 A 的友元函数,则应在类 A 的声明中加入语句 ( )。

40.类的静态成员分为 (

)和(

)。

41.运算符重载要求保持其原来的操作数个数、 (

)、 (

)和语法结构。

42.通过关键字 (

)可以声明模板,通过关键字 (

)指定函数模板的类型参数。 43•请列出C++中两种用户自定义的数据类型: (

)、(

)。

44 .构造函数的作用是

(

)。

45 .后置自增运算符“ ++ ”重载为类的成员函数

.(设类名为ClassName)的形式为(

)。

、单选题

1. 继承机制的作用是 (

)

A) 信息隐藏

B) 数据封装 C) 定义新类

D)

数据抽象 2.

类的析构函数的作用 曰, 是 ( )

A) 一般成员函数 B) 类的初始化

C) 对象的初始化

D)

删除对象创建的所有对象 3. 类的析构函数是在

(

)调用的。

A) 类创建时 B) 创建对象时

C) 删除对象时

D)

不自动调用

4.在 (

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

A) 函数体含有循环语句 B) 函数体含有递归语句 C) 函数代码少、频繁调用

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

5 •如果类A 被说明成类B 的友元,则() A) 类 A 的成员即类 B 的成员 B) 类 B 的成员即类 A 的成员

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

B 的成员D)类B 不一定是类A 的友元

6 .在类中声明转换函数时不能指定 ()

A) 参数

B) 访问权限

C) 操作

D) 标识符

7.在公有继承的情况下,基类成员在派生类中的访问权限

( )

A) 受限制 B) 保持不变 C) 受保护

D)

不受保护 &在C++类体系中,

不能被派生类继承的有

( )

A) 转换函数

B) 构造函数

C) 虚函数

D)

静态成员函数 9.假定 ClassN 为一 个类,则执行“ ClassN x; ”语句时将自动调用该类的 ( ) A) 有参构造函数 B) 无参构造函数

C) 拷贝构造函数

D)

赋值构造函数 10. C++ 语言建立类族是通过 (

)

A) 类的嵌套 B) 类的继承

C) 虚函数 D)

抽象类

11. 重载一元运算符--为类A 的成员运算符,若有类 A 的对象obj ,则表达式--obj 被C++编译器解释 为( )。

12 •以下有四种关于类的说法,其中不正确的是 (

A) 构造函数可以指定参数,但不能指定函数类型 C) 析构函数不可以指定参数,但可以指定函数类型 13.面向对象程序设计讲求封装性,在 C++中封装是借助于()实现的。 A) 结构 B) 数组 C) 类

D) 函数

A) obj.operator -- ( ) B) operator -- (obj) C) obj::operator -- ( ) D) obj:operator -- ( ) )。

B) 一个类可以有多个构造函数 D) 一个类只能有一个析构函数

相关文档
最新文档