首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请打开考生文件夹下的解决方案文件proj2,其中定义了vehicle类,并派生出motorcar类和bicycle类。然后以motorcar和bicycle作为基类,再派生出motorcycle类。要求将vehicle作为虚基类,避免二义性问题。请在程序中
请打开考生文件夹下的解决方案文件proj2,其中定义了vehicle类,并派生出motorcar类和bicycle类。然后以motorcar和bicycle作为基类,再派生出motorcycle类。要求将vehicle作为虚基类,避免二义性问题。请在程序中
admin
2019-08-23
69
问题
请打开考生文件夹下的解决方案文件proj2,其中定义了vehicle类,并派生出motorcar类和bicycle类。然后以motorcar和bicycle作为基类,再派生出motorcycle类。要求将vehicle作为虚基类,避免二义性问题。请在程序中的横线处填写适当的代码并删除横线,以实现上述类定义。此程序的正确输出结果应为:
80
150
100
1
注意:只能在横线处填写适当的代码,不要改动程序中的其他内容,也不要删除或移动“//****found****”
#include
class vehicle
{
private:
int MaxSpeed;
int Weight;
public:
//**********found**********
vehicle(int maxspeed,int weight):___________
~vehicle(){};
int getMaxSpeed(){return MaxSpeed;}
int getWeight(){return Weight;}
};
//**********found**********
class bicycle:__________public vehicle
{
private:
int Height;
public:
bicycle(int maxspeed,int weight,int height):vehicle(maxspeed,weight),Height(height){}
int getHeight(){return Height;};
};
//**********found**********
class motorcar:___________public vehicle
{
private:
int SeatNum;
public:
motorcar(int maxspeed,int weight,int seatnum):vehicle(maxspeed,weight),SeatNum(seatnum){}
int getSeatNum(){return SeatNum;};
};
//**********found**********
class motorcycle:___________
{
public:
motorcycle(int maxspeed,int weight,int height):vehicle(maxspeed,weight),bicycle(maxspeed,weight,
height),motorcar(maxspeed,weight,1){}
};
void main()
{
motorcycle a(80,150,100);
cout<
cout<
cout<
cout<
}
选项
答案
(1)MaxSpeed(maxspeed),Weight(weight){}; (2)vinual (3)vinual (4)public bicycle,public motorcar
解析
(1)主要考查考生对构造函数的掌握,构造函数使用初始化列表来对私有成员MaxSpeed和Weight初始化。
(2)主要考查考生对派生类的掌握,题目要求将vehicIe作为虚基类,避免二义性问题。因此在这里添加vinual使vehicle成为虚基类。
(3)主要考查考生对派生类的掌握,题目要求以motorcar和bicycle作为基类,再派生出motorcycle类。在主函数中可以看到motorcycle类的实例a调用getHeight函数和getseatNum函数,由此可知这两个基类都是公有继承,因此得出语句:puhlic bicycle,public motorcar。
转载请注明原文地址:https://kaotiyun.com/show/IJ8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
在语句cin>>data;中,cin是
表示C++类中保护成员的关键字是( )。
下面程序的功能是把316表示为两个加数的和,使两个加数分别能被13和11整除,在下画线处应填入的选项是#include<iostream.h>Voidmain(){inti=0,j,k;do{i++;
对建立良好的程序设计风格,下面描述正确的是()。
假定A为一个类,则语句A(A&a);为该类【】函数的原型说明。
已知一个类A,类A有三个公有成员:voidf1(int),voidf2(int)和inta;定义指向类A成员函数的指针是()。
下面的语句中错误的是
下列关系模型中,能使经运算后得到的新关系中属性个数多于原来关系中属性个数的是
在C++语言中,一个函数的定义前加上关键字【】时,该函数就声明为内联函数。
随机试题
某基金当日持有股票的市值为15亿元,债券市值10亿元,应付的证券清算款3亿元,应付费用合计0.5亿元,银行存款为1亿元,假设无其他项目,则该基金当日的资产总值为()亿元。
微波通信频率配置方案不包括()
健忘虚证不包括
减少X线摄影散射线的方法中,可降低影像清晰度的是
[2013年第30题]下列砌块砌筑的说法中,错误的是:
对外提供财务报表的基本要求有()。
A方案在三年中每年年初付款100元,B方案在三年中每年年末付款100元,若利率为10%,则两者在第三年年末时的终值相差()元。
科学家们经过多年的努力,创立了一种新兴的生物技术——基因工程,实施该工程的最终目的是()。
最近发现,19世纪80年代保存的海鸟标本的羽毛中,汞的含量仅为目前同一品种活鸟的羽毛汞含量的一半。由于海鸟羽毛中的汞的积累是海鸟吃鱼所导致,这就表明现在海鱼中汞的含量比100多年前要高。以下哪项是上述论证的假设?
A、She’ssufferingfrominsomnia.B、She’sgottoomanybillstopay.C、She’sgottoomuchworktodo.D、She’sjustlostherjob.
最新回复
(
0
)