C++(练习)第9章,多态性与虚函数

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
参考答案
1:纯虚函数
12.虚函数必须是类的__1__。
参考答案
1:非静态成员函数或成员函数
13.多态性分为两类:编译时的多态性和__1__的多态性。
参考答案
1:运行时
14.在面向对象的程序设计中,不同的对象可以调用相同名称的函数并导致完全不同的行为现象称为__1__。
参考答案
ቤተ መጻሕፍቲ ባይዱ1:多态性
15.成员函数有实函数、虚函数和__1__3种。
参考答案
1:引用或指针
20.含有纯虚函数的类称为__1__。
参考答案
1:抽象类
21.在C++中,编译时的多态性是通过函数重载和__1__体现的。
参考答案
1:模板
三.问答题
四.编程题
A virtual
B public
C using
D false
参考答案
A
7.下列描述中,属于抽象类的性质是_______。
A可以说明虚函数
B可以进行构造函数重载
C可以定义友元函数
D不能说明其对象
参考答案
D
8.要实现动态联编必须________。
A通过成员名限定来调用虚函数
B通过对象名来调用虚函数
C通过派生类对象来调用虚函数
D通过对象指针或引用来调用虚函数
参考答案
D
9.在类中用来声明虚成员函数的关键字是________。
A virtual
B public
C protected
D private
参考答案
A
10.以下哪个基类中的成员函数表示纯虚函数________。
A virtual void tt()=0;
B void tt(int)=0;
参考答案
1:纯虚函数
16.动态联编的多态性由__1__支持。
参考答案
1:虚函数
17. C++语言支持的两种多态性分别是__1__的多态性和运行时的多态性。
参考答案
1:编译时
18.如果一个类至少有一个纯虚函数,那么就称该类为__1__。
参考答案
1:抽象类
19.抽象类不能定义对象,但可以声明抽象类的__1__作为参数类型、函数返回类型或显式转换类型。
C virtual void tt(int);
D virtual void tt(int){ };
参考答案
A
二.填空题
1.如果类包含了一个或多个__1__,则它是抽象类。
参考答案
1:纯虚函数
2.虚函数必须是类的__1__。
参考答案
1:非静态成员函数或成员函数
3.多态性分为两类:编译时的多态性和__1__的多态性。
参考答案
1:友元函数
7.如果在类中定义了一个成员函数为__1__,则表明在该继承层次链条的派生类中有可能重新定义这个成员函数的实现,即它可能被派生类的同名函数所覆盖。
参考答案
1:虚函数
8.动态多态性通过__1__实现。
参考答案
1:虚函数
9.定义一个函数名为fun,返回值为int,没有参数的纯虚函数的定义是__1__。
一,单选题
1.在类中用来声明虚成员函数的关键字是________。
A virtual
B public
C protected
D private
参考答案
A
2.关于动态联编的下列叙述中,错误的是________。
A动态联编是以虚函数为基础的
B动态联编运行时确定所调用函数代码
C动态联编调用函数操作是指向对象的指针或对象引用
A抽象类
B虚函数
C派生类
D其他都不对
参考答案
A
5.关于虚函数的描述中,()是正确的。
A虚函数是一个静态成员函数
B虚函数是一个非成员函数
C虚函数既可以在函数说明时定义,也可以在函数实现时定义
D派生类的虚函数与基类中对应的虚函数具有相同的参数个数和类型
参考答案
D
6.下面4个选项中,()是用来声明虚函数的。
D动态联编是在编译时确定操作函数
参考答案
D
3.有以下类定义:
class A
{
public:
virtual void f1(){ cout<<1; };
void f2(){ cout<<2; };
};
class B : public A
{
public:
void f1(){ cout<<3;}
void f2(){ cout<<4;}
};
若b为B类对象,p为A类指针,则下列选项正确的是( )。
A执行:p=&b; p->f1();语句,输出3
B执行:p=&b; p->f2();语句,输出4
C执行:p=&b; p->f1();语句,输出2
D执行:p=&b; p->f2();语句,输出1
参考答案
A
4.如果一个类至少有一个纯虚函数,那么就称该类为()。
参考答案
1:virtual int fun()=0或virtual int fun()=0;
10.定义一个函数名为fun,返回值为int,没有参数的纯虚函数的定义是__1__。
参考答案
1:virtual int fun()=0或virtual int fun()=0;
11.如果类包含了一个或多个__1__,则它是抽象类。
参考答案
1:运行时
4.虚函数从表现形式上看是指那些被__1__关键字修饰的成员函数。
参考答案
1:virtual
5.如果在类中定义了一个成员函数为__1__,则表明在该继承层次链条的派生类中有可能重新定义这个成员函数的实现,即它可能被派生类的同名函数所覆盖。
参考答案
1:虚函数
6.非成员函数应该声明为类的__1__才能访问该类的私有成员。
相关文档
最新文档