- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
面向对象程序试题6
中国计量学院《面向对象程序设计》课程考试试卷(C)
一、1分,共20分)。
1.所有的面向对象程序设计语言,都支持三个共同的本质特征___、___、___。
2.为了解决程序中函数调用的效率问题,引入了___,定义时需在函数前面加上___说明;为了提高程序的运行效率,引入了___,定义时需在函数前面加上___说明。
3.在类的定义当中,缺省的成员是__成员。
4. 请填写下列表格(填写派生类中成员的类型)。
派生类继承方式
基类中成员类型 public private protected public Private 不可见 不可见 不可见 protected 5.利用成员函数对二元运算符进行重载时,其左操作数为___,右操作数为___。
6.设置虚基类的目的是___,可通过___标识虚基类。
7.动态联编是在___的支持下实现的,它通过___来调用该函数操作。
二、2分,共20分)
1.下列关于类型转换的描述中,()是错误的。
A、在不同类型操作数组成的表达式中,其表达式类型一定是最高类型double型;
B、逗号表达式的类型是最后一个表达式的类型;
C、赋值表达式的类型是左值的类型;
D、由低向高的类型转换是保值映射。
?
2.()不是构造函数的特征。
A、构造函数的函数名与类名相同;
B、构造函数可以重载;
C、构造函数可以设置缺省参数;
D、构造函数必须指定类型说明
3.在C++中,关于下列设置参数默认值的描述中,()是正确的。
A、不允许设置参数的默认值;
B、设置参数默认值只能在定义函数时设置;
C、设置参数默认值时,应该是先设置右边的,再设置左边的;
D、设置参数默认值时,应该全部参数都设置
4.关于new运算符的下列描述中,()是错误的。
A、它可以用来动态创建对象和对象数组;
B、使用它创建的对象或对象数组可以使用运算符delete删除;
C、使用它创建对象时要调用构造函数;
D、使用它创建对象数组时必须指定初始值。
5.重载函数在调用时选择的依据中,()是错误的。
A、参数个数;
B、参数的类型;
C、函数名字;
D、函数的类型
6.下列描述中,()是抽象类的特性。
A、可以说明虚函数;
B、可以进行构造函数重载;
C、可以定义友元函数;
D、不能说明其对象。
7.()是析构函数的特征。
A、一个类中只能定义一个析构函数;
B、析构函数名与类名不同;
C、析构函数的定义只能在类体内;
D、析构函数可以有一个或多个参数;
8.关于delete运算符的下列描述中,()是错误的。
A、它必须用于new返回的指针;
B、它也适用于空指针;
C、对一个指针可以使用多次该运算符;
D、指针名前只有一对方括号符,不管所删除数组的维数。
9.const int *p说明不能修改()。
A、p指针;
B、p指针指向的变量;
C、p指针指向的数据类型;
D、上述A、B、C三者
10、关于子类型的描述中,()是错误的。
A、子类型就是指派生类是基类的子类型;
B、一种类型当它至少提供了另一种类型的行为,则这种类型是另一种类型的子类型;
C、在公有继承下,派生类是基类的子类型;
D、子类型关系是不可逆的
三、改错题(共15分)
1.?????? 找出下面程序中的错误,并说明原因。
class X
{
public:
int readme() const {return m;}
void writeme(int i) {m=i;}
private:
int m;
};
void f(X x1,const X x2)
{
x1.readme();
x1.writeme(1);
x2.readme();
x2.writeme(2);
}
2.找出下面程序中的错误,并改正。
#include iostream.h
class TV
{
void SetStation(int Station);
int GetStation();
private:
int itsStation;
}
void main()
{
TV myTV;
myTV.itsStation=9;
TV.SetStation(10);
TV myOtherTV(2);
coutmyTV.GetStation();
}
四、10分,共20分)。
?1、#include iostream.h
class Test;
void fun1(Test t);
Test fun2();
class Test
{
public:
Test(int n=1) {val=n; ?? coutCon.endl;???? }
Test(const Test t) {val=t.val; coutCopy con.endl;}
Test operator = (Te
原创力文档


文档评论(0)