欢迎来到天天文库
浏览记录
ID:35486873
大小:72.34 KB
页数:7页
时间:2019-03-25
《类和对象、构造函数和析构函数单元测验》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、类和对象、构造函数和析构函数单元测验(满分80分)学号:姓名:成绩:一、选择题(每小题1分,共10分)1.下列叙述中,不正确的是:A.一个类可以不定义构造函数B.一个类可以不定义析构函数C.类的析构函数可以重载D.类的构造函数可以重载2.执行以下程序后,输岀结果依次是:classtest{intx;public:test(inta){x=3;c()ut<〈x«”构造函数”;}~test(){cout«x<<"析构函数”;}};voidA.B.C.D.1111main()testx(l);x=5;}构造函数构造函数构
2、造函数构造函数1551构造函数构造函数析构函数析构函数5析构函数5析构函数5析构函数5析构函数5构造两数5析构函数5构造函数5析构函数以下匸确的说法是3.关于构造函数,A.定义类的成员时,必须定义构造函数,因为创建对象吋,系统必定要调用构造函数B.构造函数没有返回值,因为系统隐含指定它的返回值类型为voidC.无参构造两数和参数为缺省值的构造函数符合重载规则,因此这个类屮可以含有这两种构造函数D.对象一经说明,首先调用构造函数,如果类中没冇定义构造函数,系统会自动产生一个不做任何操作的缺省构造函数4.关于析构函数,
3、以下说法正确的是()A.析构函数与构造函数的唯一区别是函数名前加波浪线、,因此,析构函数也可以重载B.当对象调用了构造函数之后,立即调用析构函数C.定义类吋可以不说明析构函数,此吋系统会自动产生一个缺省的析构函数D.类中定义了构造函数,就必须定义析构函数,否则程序不完整,系统无法撤消对象5.对于一个C++的类()A.只能有一个构造两数和一个析构函数B.可冇一个构造函数和多个析构函数C.可有多个构造函数和一个析构函数D.可有多个构造函数和多个析构函数1.下列关于对象的描述不正确的是()。A.对象只能描述有形的东西B.
4、对象具冇属性和服务两个主要因素C.现实世界中的一切事物都可以看作对彖,但只有在具体的系统中加以论述才有实际的意义D.对象的属性是对象的静态特征,服务是动态特征,并H•对彖的属性只能rti木对彖的服务来操作2.关于类的继承不正确的是()。A.引入类的继承FI的就是为了代码重用,提高编程效率B.子女有父母的特征是类的继承C.了继父产业是类的继承D.了类可以全部继承父类的属性和服务,也可部分继承父类的属性和服务3.构造函数的功能是()。A.为类名分配存储空间B.为类的实例分配存储空间C.建立对象并初始化数据成员D.建立对
5、象并初始化成员函数4.在下列函数中,()不能重载。A.成员函数B.非成员函数C.析构函数D.构造函数5.类中定义的各个成员需要设置被访问的权限,以下给出的关键字中,()不能用于限定成员的访问权限。A.externB・privateC.protectedD.public二、填空题(每空1分,共16分)1.构成对彖的两个主要因素是_(1)和(2),其中(3)属于动态厲性,属于静态属性,⑷只能由⑸來操作。2.类是一(6)的集合,分类的依据是(7)o3.程序的三种基本的控制结构是;(8)、(9)、(10)O4.算法具冇(1
6、1)、(⑵、(13)>(14)的性质,所以在编程时要保证这些性质的实现。5.这是一个从键盘输入三个数,找出最大数的程序。请在空白处填写所缺内容。voidmainO{inta,b,c,x;cin〉>a;cout«wa=w<>b;cout〈〈”b二"<b)X二8;if(16)x二b;elsecout
7、X〈”megreatestnumberis;”<classA{intx,y;publie:A(inta,intb){x=a;y=b;cout«>,ABC"«'t';}A(){x=3;y二4;cout<<”CBA”《'';}voidShow(){cout<<”x二”«x«?t'<<”y二”«y«,t';}~A(){cout<<”XYZ”«'W;}};voidmain(void){A*sl=newA(l
8、,2),*s2=newA;s2->Show();deletesi;deletes2;}问题一:本程序的执行后输出结果是:⑴问题二:如果将语句s2-〉Show()改为sl->Show(),执彳亍结果是:⑵2、根据程序回答问题:#includeclassA{public:A(inta){x二a;cout«”x二”<
此文档下载收益归作者所有