C++面向对象程序设计模拟试题五.docx
- 文档编号:2394763
- 上传时间:2023-05-03
- 格式:DOCX
- 页数:19
- 大小:21.37KB
C++面向对象程序设计模拟试题五.docx
《C++面向对象程序设计模拟试题五.docx》由会员分享,可在线阅读,更多相关《C++面向对象程序设计模拟试题五.docx(19页珍藏版)》请在冰点文库上搜索。
C++面向对象程序设计模拟试题五
C++面向对象程序设计模拟试题五
一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中,只有一个是苻合题目要求的。
请将其代码填写在题后的括号内。
错选,多选或未选均无分。
1.下列对类的构造函数和析构函数描述正确的是(a)。
A)构造函数可以重载,析构函数不能重载
B)构造函数不能重载,析构函数可以重载
C)构造函数可以重载,析构函数可以重载
D)构造函数不能重载,析构函数不能重载
2.在函数定义前加上关键字“inline”,表示该函数被定义为(b)。
A)重载函数B)内联函数
C)成员函数D)普通函数
3.下面有关重载函数的说明中,(c)是正确的。
A)重载函数必须具有不同的返回值类型
B)重载函数形参个数必须不同
C)重载函数必须具有不同的形参列表
D)重载函数名可以不同
4.下列有关类与对象的说法中,(c)是不正确的。
A)对象是类的一个实列
B)任何一个对象只能属于一个具体的类
C)一个类只能有一个对象
D)类和对象的关糸和数椐类型与变量的关糸类似
5.已知:
Print()函数是一个类的常成员函数,它无返回值,下列表示中,正确的是(a)。
A)voidPrint()const;B)constvoidPrint();
C)voidconstPrint();D)voidPrint(const)
6.假定Myclass为一个类,那么下列的函数说明中(d)为该类的析构函数。
A)void~Myclass();B)~Myclass(intn);
C)Myclass();D)~Myclass()
7.下面类的定义中有(c)处错误。
classmyclass
{
inti=0;
public:
voidmyclass(){};
~myclass(value);
};
A)1B)2C)3D)4
8.说明虚函数的关键字是(b)。
A.inlineB.virtualC.defineD.static
9.cout是某个类的标准对象的引用,该类是(a)。
A.ostreamB.istreamC.stdoutD.stdin
10.如果class类中的所有成员在定义时都没有使用关键字public、private或protected,则所有成员缺省定义为(c)。
A.publicB.protectedC.privateD.static
11.定义类模板时要使用关键字(d)。
A.constB.newC.deleteD.template
12一个类的所有对象共享的是(d)。
A.私有数据成员B.公有数据成员
C.保护数据成员D.静态数据成员
13.静态成员函数没有(b)。
A.返回值B.this指针C.指针参数D.返回类型
14.解决多重继承中二义性问题的方法有(c)。
A.只能使用作用域分辨操作符
B.使用作用域分辨操作符或赋值兼容规则
C.使用作用域分辨操作符或虚基类
D.使用虚基类或赋值兼容规则
15.如果在类CTest的外面函数调用CTest:
:
f();则函数f()是类CTest的(a)。
A.静态成员函数B.非静态成员函数
C.友元函数D.前面都不正确
二、判断正误题(本大题共5小题,每小题2分,共10分)判断正误,在题后的括号内,正确的划上“√”错误的划上”×”。
1.构造函数可以设置默认参数a
2.类的析构函数的作用是对象的初始化b
3.cout的默认输出对象是键盘,cin的默认输入对象是屏幕b
4.抽象类可以用来直接创建对象。
b
5.常对象可以调用任意成员函数。
b
三、填空题(本大题共5小题,每小题2分,共10分)不写解题过程,将正确的答案写在每小题的空格内,错填或不填均无分。
1.重载运算苻”-”的函数名为(operator-)。
2.C++中类的用途有两种,一种是类的实例化,即生成类的对象,另一种是通过
(继承),派生出新的类。
3.在下面程序的横线处填上正确的语句,以实现动态多态。
#include
classBase
{
public:
virtualvoidFun(){cout<<"Base:
:
Fun"< }; classDerived: publicBase { public: voidFun(){cout<<"Derived: : Fun"< }; intmain() { Basea,*pb; Derivedb; ; pb->Fun();//调派生类的成员函数Fun(),以实现动态多态 return0; } 4.编译时多态性可以用(虚基类)函数实现。 5.使用new建立的动态对象在不用时必须用(delete)删除,以便释放所占用空间。 四、程序分析题(本大题共8小题,每小题3分,共24分)给出下面各程序的输出结果。 1.若有以下程序: #include classA { inta; public: A(intaa=0){a=aa;} ~A(){cout<<"DestructorA!
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C+ 面向 对象 程序设计 模拟 试题