收藏 分享(赏)

面向对象程序设计样卷.doc

上传人:tkhy51908 文档编号:7485059 上传时间:2019-05-19 格式:DOC 页数:7 大小:66.50KB
下载 相关 举报
面向对象程序设计样卷.doc_第1页
第1页 / 共7页
面向对象程序设计样卷.doc_第2页
第2页 / 共7页
面向对象程序设计样卷.doc_第3页
第3页 / 共7页
面向对象程序设计样卷.doc_第4页
第4页 / 共7页
面向对象程序设计样卷.doc_第5页
第5页 / 共7页
点击查看更多>>
资源描述

1、面向对象程序设计样卷一、选择题(本大题共 10 小题,每题 2 分,共 20 分)1面向对象程序设计中,它着重于( )的设计。 A. 对象 B. 类 C. 算法 D. 数据2面向对象程序设计中,对象与对象之间的通信机制是( )。A. 对象 B. 类 C. 消息 D. 接口3使用私有成员的目的是( )A. 信息隐藏 B. 数据封装 C. 定义新类 D. 数据抽象4在下列定义的引用中,( )是错误的。A. int i; B. int i;int float C. float i; D. char d;float char 5. 假定 BB 为一个类,则执行 BB y;语句时将自动调用该类的( )A

2、. 有参构造函数 B. 无参构造函数 C. 拷贝构造函数 D. 赋值重载函数6. 下列关于子对象的描述中,( )是错误的。A子对象是类的一种数据成员,它是另一个类的对象B子对象不可以是自身类的对象C对子对象的初始化要包含在该类的构造函数中D.一个类中只能含有一个子对象作其成员7下列对派生类的描述中,( )是错误的。A. 一个派生类可以作为另一个派生类的基类B派生类至少应有一个基类C. 基类中成员访问权限继承到派生类中都保持不变D派生类成员除了自己定义的成员外,还包含了它的基类成员8关于多继承二义性的描述,( )是错误的。A. 派生类的多个基类中存在同名成员时,派生类对这个成员访问可能出现二义性

3、B一个派生类是从具有共同的间接基类的两个基类派生来的,派生类对该公共基类的访问可能出现二义性。C. 解决二义性最常用的方法是使作用域运算符对成员进行限定D. 派生类和它的基类中出现同名函数时,将可能出现二义性9.实现两个相同类型数加法的函数模板的声明是( )A.add(T x,T y) B.T add(x,y) C.T add(T x,y) D.T add(T x,T y)10.控制输出格式的控制符中,( )是设置输出宽度的。A.ws B.ends C. setfill() D.setw()二、填空题(本大题共 10 小题,每题 2 分,共 20 分)1. 以/*开始,以*/结束,在/*和*/

4、之间的部分即为 。2重载函数在参数类型或参数个数上不同,但_相同。3. 假如一个类的名称为 MyClass,使用这个类的一个对象初始化该类的另一个对象时,可以调用_构造函数来完成此功能。4当删除对象时,程序自动调用 。5. 对于每一个类的非静态成员函数,都有一个隐含的_指针。6.在一个继承结构中,解决二义性的方法有 和 。7. 若要把类 B 定义为类 A 的友元类,则应该在类 A 的定义中加入语 。8. 抽象类是指 。9. 在 和 情况下适宜采用 inline 定义内联函数。10C+的异常处理机制使得异常的引发和处理 在同一函数中。三、改错题(下面程序或程序段中有一处错误,请用注释标明错误所在

5、行的出错原因。本大题共 5 小题,每题 2 分,共 10 分)1 #includeusing namespace std;int main() coutusing namespace std;int main()x=3;int y=x*x;coutusing namespace std;class Aapublic:Aa(int i=0)a=i; coutusing namespace std;class Testpublic:static int x;int x=20;int main()coutusing namespace std;class Testprivate:int num;pu

6、blic:Test();Test(int n); Test()coutusing namespace std;class Mypublic:My(int aa)A=aa;B-=aa; static void fun(My m);private:int A;static int B;void My:fun(My m)coutusing namespace std;int main( )void fun(intint a,b;fun(a,2);fun(b,4);coutusing namespace std;class big private:int a;public:big(int i) a=i

7、;coutusing namespace std;const double PI=3.14;class Figure public:Figure();virtual double circumference()=0;class Circle : public Figure public: Circle(double myr)R=myr;double circumference()return 2*PI*R;protected:double R;class Rectangle : public Figure public: Rectangle (double myl,double myw)L=m

8、yl;W=myw;double circumference()return 2*(L+W);private:double L,W;void func(Figure #includeclass Myclasspublic:Myclass(double i=0) x=y=i;Myclass(double i,double j)x=i;y=j;friend double distance(Myclass private:double x,y; ;double distance(Myclass double dy=a.y-b.y;return sqrt(dx*dx+dy*dy);int main()

9、Myclass ml,m2(5),m3(3,4);cout“The distance1: “distance(ml,m3)endl;cout“The distance2: “distance(m2,m3)endl;cout“The distance4: “distance(ml,m2)endl; (1)指出重载的构造函数。(2)指出设置默认参数的构造函数。(3)指出友元函数,它的作用是什么?六、程序设计题(本大题共 2 小题,每题 6 分,共 12 分)1声明一个 Circle 类,有数据成员 Radius(半径)、成员函数 GetArea(),计算圆的面积,构造一个 Circle 的对象进行测试。2定义了一实部为 real,虚部为 imag 的复数类 complex,并在类中重载运算符,实现复数二元加、及输入运算。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报