1 单选(2)   
所谓多态性是指()    得分/总分         
A.    一个对象调用不同名称的对象       
B.    不同的对象调用相同名称的函数    2.00/2.00       
C.    一个对象调用不同名称的函数       
D.    不同的对象调用不同名称的函数   
正确答案:B你选对了    解析:  B、多态性有两种静态多态性和动态多态性,静态多态性是指调用同名函数,由于参数 的不同调用不同的同名函数;动态多态性是指不同对象调用同名函数时,由于对象不同调用不同 的同名函数。 多态性肯定具有相同的函数名   
2    单选(2)    以下基类中的成员函数表示纯虚函数的是()    得分/总分         
A.     void tt(int)=0        
B.    virtual void tt()=0    2.00/2.00       
C.    virtual void tt(int){}       
D.    virtual void tt(int)   
正确答案:B你选对了    解析:  B、当在基类中不能为虚函数给出一个有意义的实现时,可以将其声明为纯虚函数,实 现由派生类完成。格式:virtual<函数返回类型说明符><函数名>(<参数表>)=0;   
3    单选(2)    抽象类中至少要有一个()函数    得分/总分         
A.    纯虚       
B.    析构    0.00/2.00       
C.    友元       
D.    重载   
正确答案:A你错选为B    解析:  A、纯虚  [解析]至少有一个纯虚函数的类就称为抽象类,即不能实例化。   
4    单选(2)   
在派生类中定义虚函数时,可以与基类中相应的虚函数不同的是()    得分/总分         
A.    函数体     2.00/2.00       
B.    函数名称        
多态性与虚函数C.    参数类型       
D.    参数个数    
正确答案:A你选对了    解析:  A、虚函数在基类和派生类,具有相同的返回类型、形参类型和形参个数,而函数体可 以根据不同的派生类或基类实现不同的操作,即不同函数体。   
5    单选(2)   
#include <iostream.h>    
class A    
{int i;    
public:     
virtual void fun()=0;    
A(int a)   
{i=a;} };    
class B:public A   
{int j;    
public:
void fun()     
{cout<<"B::fun()n"; }    
B(int m,int n=0):A(m),j(n){} };     
void main()    
{A *pa;    
B b(7);    
pa=&b; }     
程序第12行有问题,下列()选项修改可使程序正常          得分/总分          A.    B(int m): j(n){}       
B.    B(int m,int n=0):j(n){}    2.00/2.00       
C.    B(int m,int n=0):j(n),A(m){}       
D.    B(int m,int n=0):A(m) {}   
正确答案:B你选对了    解析:  B、因为基类是抽象类,不能被实例化,所以在派生类中不能 调用初始化基类对象。所以B(int m,int n=0):A(m),j(n){}错误,删去A(m)   
6    单选(2)   
B是类A的公有派生类,类A和类B中都定义了虚函数func(),p是一个指向类A对象的指针 ,则p->A::func()将()    得分/总分         
A.     既调用类A中函数,也调用类B中的函数        
B.    根据p所指的对象类型而确定调用类A中或类B中的函数func()        C.    调用类B中的函数func()       
D.    调用类A中的函数func()    2.00/2.00   
正确答案:D你选对了    解析:  D、向类成员指针的使用,A::func()是明确调用A类的func函数,所以不管p指向基 类或者派生类对象,都执行基类虚函数。注意p->A::func()p->fun();进行区分。如果使用p- >fun(),因为p指向派生类对象,由动态多态性可知要调用派生类的虚函数。   
7    单选(2)   
关于纯虚函数和抽象类的描述中,错误的是    得分/总分         
A.    抽象类是指具有纯虚函数的类       
B.    纯虚函数是一种特殊的虚函数,它没有具体的实现       
C.    抽象类只能作为基类来使用,其纯虚函数的实现由派生类给出       
D.    一个基类说明中有纯虚函数,该基类的派生类不再是抽象类    2.00/2.00    正确答案:D你选对了   
8    单选(2)   
下列叙述中,正确的是    得分/总分         
A.    一个基类定义的虚函数,该类的所有派生类都继承并拥有该函数    2.00/2.00       
B.    虚函数的返回类型必须是void       
C.    派生类中重定义虚函数时,参数表必须改变       
D.    虚函数必须在派生类中定义,基类不需定义   
正确答案:A你选对了   
9    单选(2)   
在下面的运算符重载函数的原型中,错误的是( )    得分/总分         
A.    Volume Volume: :operator - (Volume);        
B.    Volume operator - (Volume, Volume);       
C.    Volume operator - (double, double);     2.00/2.00       
D.    double Volume::operator- (double);   
正确答案:C你选对了   
10    单选(2)   
下面有关重载函数的说法中正确的是(        得分/总分         
A.    重载函数名可以不同       
B.    重载函数形参个数必须不同       
C.    重载函数必须具有不同的返回值类型       
D.    重载函数必须有不同的形参列表    2.00/2.00    正确答案:D你选对了       

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。