欢迎来到天天文库
浏览记录
ID:39309645
大小:70.53 KB
页数:15页
时间:2019-06-30
《课后习题 第十章 类与对象》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、一:选择题1.在下列关键字中,用于说明类中公有成员的是__.a.publicb.privatec.protectedd.friend2.下列的各函数中,___不是类的成员函数.a.构造函数b.析构函数c.友元函数d.复制构造函数3.___不是构造函数的特征。a.构造函数的函数名与类名相同b.构造函数可以重载c.构造函数可以设置缺省参数d.构造函数必须指定类型说明4.___是析构函数的特征。a.一个类中只能定义一个析构函数b.析构函数在对象创建时调用c.析构函数的定义只能在类体内d.析构函数可以有一个或多个参数5.关于成员函数特征的下述描述
2、中,___是错误的。a.成员函数一定是内联函数b.成员函数可以重载c.成员函数可以设置参数的缺省值d.成员函数可以是静态的6.复制构造函数的形参是___。a.某个对象名b.某个对象的成员名c.某个对象的引用名d.某个对象的指针名7.如果编程者没有显式定义构造函数(包括复制构造函数),C++编译器就___。a.出现编译错误b.没有构造函数c.必须显示定义d.隐式定义缺省的构造函数8.静态成员函数仅能访问___。a.静态的数据成员b.非静态的成员函数c.非静态的数据成员d.以上都不对9.静态数据成员的初始化必须在___。a.类内b.类外c.在
3、构造函数内d.静态成员函数内10.友元作用___。a.提高程序的运用效率b.加强类的封装性c.实现数据的隐藏性d.增加成员函数的种类一:选择题:1.A2.C3.D4.A5.A6.C7.D8.A9.B10.A二:判断题1.使用关键字class定义的类中缺省的访问权限是私有(private)的。2.构造函数和析构函数都不能重载。3.说明或定义对象时,类名前不需加class关键字。4.可以在类的构造函数中对静态数据成员进行初始化。5.rotected和private区别在于:protected成员可以被派生类访问,而private成员则不能被派
4、生类访问。二:判断题1.对2.错3.对4.错5.对三、编程实现1.创建一个类,具有public、private和protected数据成员和函数成员。创建该类的一个对象,看看试图存取所有的类成员时会得到一些什么信息。编写一个全局friend函数来访问该类的私有数据成员。2.创建一个没有任何构造函数的类,显示可以用缺省的构造函数创建对象。然后为该类创建一个非缺省的构造函数(带一个参数),试着在编译一次,解释发生的现象。3.建立一个类,该类包含const成员函数和非const成员函数,然后建立这个类的const和非const对象。分别为这两种
5、类型的对象调用两种成员函数,解释发生的现象。4.利用静态数据成员的概念,编写一个类,可以统计目前存在多少个该类的对象。5.列举调用复制构造函数的三种情况。6.编写几何点(二维平面上)的类Point,包括位置属性(二维坐标x,y),成员函数包括点的位置获取函数GetX()和GetY(),点的位置设置函数SetX()和SetY(),和点的位置移动函数MoveTo()以及点的信息打印函数Display()。7.编写几何图形圆的类Circle,包括两个属性:圆心O(用上题中的Point类实现)和半径R。成员函数包括:圆心位置获取函数GetO()和
6、半径获取函数GetR();半径位置设置函数SetR();圆的位置移动函数MoveTo();圆的半径设置函数SetR();以及圆的信息打印函数Display()。8.编写复数类Complex。实现各种常用构造函数,实现整数、实数向复数的转化函数,实现整数、实数和复数以及复数之间的加、减、乘、除各种运算,实现==、!=等逻辑运算。三、编程实现1.参考程序如下:#includeclassC{private:intprivate_data;voidprivate_method(){cout<<"Iamprivatemeth
7、od"<8、){c.private_method();c.protected_method();cout<<"c.private_data="<
8、){c.private_method();c.protected_method();cout<<"c.private_data="<
此文档下载收益归作者所有