《面向对象程序设计》第08章在线测试剩余时间:58:15
答题须知:1、本卷满分20分。
2、答完题后,请一定要单击下面的“交卷”按钮交卷,否则无法记录本试卷的成绩。
3、在交卷之前,不要刷新本网页,否则你的答题结果将会被清空。
第一题、单项选择题(每题1分,5道题共5分)
1、面向对象方法的多态性是指( C)。
A、一个类可以派生出多个特殊类B、一个对象在不同的运行环境中可以有不同的变体
C、针对一消息,不同的对象可以以适合自身的方式加以响应D、一个对象可以是由多个其他对象组合而成的
2、下列关于虚函数与函数重载区别的叙述中不正确的是( A)
A、函数说明形式上不同B、函数重载允许是非成员函数,虚函数只能是成员函数
C、函数重载的调用依据参数和类型的差别,虚函数则依据对象D、函数重载的本体可以在类外定义,虚函数不可以
3、当一个类的某个函数被说明为 virtual 时,该函数在该类的所有派生类中 (A )
A、都是虚函数B、只有被重新说明时才是虚函数
C、只有被重新说明为 virtual 时才是虚函数D、都不是虚函数
4、要实现动态联编必须( D)
A、通过成员名限定来调用虚函数B、通过对象名来调用虚函数
C、通过派生类对象来调用虚函数D、通过对象指针或引用来调用虚函数
5、类A 中定义了虚函数f,类C是类A的派生类,类C中重新定义了虚函数f。声明变量: A a,*p1; B b, *p2; 下面语句实现动态绑定的是(C )
A、a.f();B、b.f();
C、p1=&b; p1->f();D、p2=&b; p2->f();
第二题、多项选择题(每题2分,5道题共10分)
1、下面的说法正确的是( AC)
A、虚函数在派生类中可能有不同实现
B、C++对虚函数的调用采取了动态绑定方式
C、动态绑定只能通过指针或引用表示对象来调用虚函数
D、动态绑定的处理方式不能实现静态类型检查
2、虚函数实现多态的一般方法是( ACD)
A、在基类中定义虚函数
B、在派生类中重载虚函数
C、在派生类中重写虚函数
D、用基类指针引用虚函数
3、关于虚函数的说法正确的是( ABC)
A、虚函数只能是成员函数
B、静态成员函数不能是虚函数
C、虚函数不能是内联函数
D、析构函数不能是虚函数
4、关于抽象类的说法正确的是( BD)
A、抽象类可以生成类对象
B、抽象类不能用作参数类型、函数返回类型或显式转换的类型
C、不能定义抽象类指针和引用
D、抽象类只能作为其他类的基类
5、设计统一的公共接口采取的策略是(CD )
A、设计一组实现公共功能的函数作为类的成员函数
B、实现公共功能的函数必须是纯虚函数
C、作为公共接口的类只能是抽象类
D、实现公共功能的函数必须是虚函数
第三题、判断题(每题1分,5道题共5分)
1、相比较而言,静态绑定的执行速度要比动态绑定的执行速度快。T
正确错误
2、函数绑定是指函数的入口地址同函数调用相联系的过程。T
正确错误
3、构造函数说明为纯虚函数是没有意义的。T
正确错误
4、C++的虚函数必须是类的一个成员,而不允许是类的友元。T
正确错误
5、纯虚函数是一种特殊的虚函数,它没有具体的实现T
正确错误
网友评论