首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请打开考生文件夹下的解决方案文件proj2,其中定义了vehicle类,并派生出motorcar类和bicycle类。然后以motorcar和bicycle作为基类,再派生出motorcycle类。要求将vehicle作为虚基类,避免二义性问题。请在程序中
请打开考生文件夹下的解决方案文件proj2,其中定义了vehicle类,并派生出motorcar类和bicycle类。然后以motorcar和bicycle作为基类,再派生出motorcycle类。要求将vehicle作为虚基类,避免二义性问题。请在程序中
admin
2020-10-21
59
问题
请打开考生文件夹下的解决方案文件proj2,其中定义了vehicle类,并派生出motorcar类和bicycle类。然后以motorcar和bicycle作为基类,再派生出motorcycle类。要求将vehicle作为虚基类,避免二义性问题。请在程序中的横线处填写适当的代码并删除横线,以实现上述类定义。此程序的正确输出结果应为:
80
150
100
1
注意:只能在横线处填写适当的代码,不要改动程序中的其他内容,也不要删除或移动“//****found****”。
#include<iostream.h>
class vehicle
{
private:
int MaxSpeed ;
int Weight;
public:
//**********found**********
vehicle(int maxspeed,int weight):______
~vehicle(){};
int getMaxSpeed() ( returnMaxSpeed;}
int getWeight() {returnWeight;}
};
//**********found**********
class bicycle:__________public
vehicle
{
private:
int Height;
public:
bicycle(int maxspeed,int weight,int height):vehicle(maxspeed, weight),Height(height){}
int getHeight(){returnHeight ;};
};
//**********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;);
};
//**********Ic found**********
class motorcycle :___________
{
public:
motorcycle(int maxspeed,int weight,int height):vehicle(maxspeed, weight),bicycle(maxspeed,weight,height),motorcar(maxspeed,weight,1){}
};
void msin()
{
motorcycle a(80,150,100);
cout<<a.getMaxSpeed()<<endl;
cout<<a.getWeight()<<endl;
cout<<a.getHeight()<<endl;
cout<<a.getSeatNum()<<endl;
}
选项
答案
(1)MaxSpeed(maxspeed),Weight(weight){}; (2)virtual (3)virtual (4)public bicycle,public motorcar
解析
(1)主要考查考生对构造函数的掌握,构造函数使用初始化列表来对私有成员MaxSpeed和Weight初始化。
(2)主要考查考生对派生类的掌握,题目要求将vehicle作为虚基类,避免二义性问题。因此在这里添加virtual使vehicle成为虚基类。
(3)主要考查考生对派生类的掌握,题目要求以motorcar和bicycle作为基类,再派生出motorcycle类。在主函数中可以看到motorcycle类的实例a调用getHeight函数和getSeatNum函数,由此可知这两个基类都是公有继承,因此得出语句:public bicycle,public motorcar。
转载请注明原文地址:https://kaotiyun.com/show/LNyp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
使用VC6打开考生文件夹下的源程序文件modi1.cpp,该程序运行时有错误,请改正其中的错误,使程序正确运行。并且使程序输出的结果为:OK注意:错误的语句在//******error******的下面,修改该语句即可。#include<iostre
将x+y*z中的“+”用成员函数重载,“*”用友元函数重载应写为()。
使用VC6打开考生文件夹下的源程序文件modi2.cpp。请完成函数fun(char*s),该函数完成以下功能:(1)把S中的大写字母转换成小写字母,把其中的小写字母转换成大写字母。并且在函数中调用写函数WriteFile()将结果输出到modi2.tx
下面c++标识符中正确的是()。
下面叙述错误的是()。
下列有关模板的叙述中,正确的是()。
耦合性和内聚性是对模块独立性度量的两个标准。下列叙述中正确的是()。
若要对Data类中重载的加法运算符成员函数进行声明,下列选项中正确的是()。
如果表达式a>=b中的“>=”是作为非成员函数重载的运算符,则可以等效地表示为()。
下列语句中,正确的是()。
随机试题
在材料进场时必须根据()进行材料的数量和质量验收。
非法使用童工的单位、职业介绍所,应当承担法律责任。()
韩愈的圣人“制刑”法律观的依据是
Pickouttheappropriateexpressionsfromtheeightchoicesbelowandcompletethefollowingdialoguesbyblackeningthecorresp
梅毒性主动脉炎时的病变应为
A.母婴传播B.空气传播C.虫媒传播D.血液传播E.粪一口传播流行性乙型脑炎的传播途径
甲国A公司与乙国在甲国订立了一项能源开发合同,合同履行过程中出现纠纷。A公司以乙国政府没有及时按照合同支付有关款项为由诉至甲国法院,乙国政府派代表向法院阐述了乙国一贯坚持的绝对豁免主义立场。如果甲国是采取相对豁免主义的圜家,根据目前的国际法规则和实践,下列
发行人运行不足3年的,应披露()
教师把实物教具展示给学生,或者为学生做示范性实验,使学生通过直观感知获得知识的方法,叫作()。
假设某计算机所有指令都可用两个总线周期完成,一个总线周期用来取指令,另一个总线周期用来存取数据。假定总线宽度为8位,每个总线周期为250ns,因而每条指令的执行时间为500ns,若该计算机中配置的磁盘每个磁道有16个512字节的扇区,磁盘旋转一圈的时间是8
最新回复
(
0
)