首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请打开考生文件夹下的解决方案文件proj2,其中定义了vehicle类,并派生出motorcar类和bicycle类。然后以motorcar和bicycle作为基类,再派生出motorcycle类。要求将vehicle作为虚基类,避免二义性问题。请在程序中
请打开考生文件夹下的解决方案文件proj2,其中定义了vehicle类,并派生出motorcar类和bicycle类。然后以motorcar和bicycle作为基类,再派生出motorcycle类。要求将vehicle作为虚基类,避免二义性问题。请在程序中
admin
2020-10-21
29
问题
请打开考生文件夹下的解决方案文件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打开考生文件夹下的源程序文件modi3.cpp。程序通过继承关系,实现对姓名的控制。类TestClass1实现对名字访问的接口,TestClass2实现对名字的设置和输出。程序输出为:TestClass2NameMay其中定义的类并不完整
下列关于对象概念的描述中,正确的是()。
使用VC6打开考生文件夹下的源程序文件modi1.cpp,但该程序运行时有错,请改正程序中的错误,使程序输出的结果为:Number=8注意:错误的语句在//******error******的下面,修改该语句即可。#include<iostream.h
软件生命周期可分为定义阶段,开发阶段和维护阶段。详细设计属于()。
建立一个类对象时,系统自动调用()。
有如下程序:#inc1ude<iostream>usingnamespacestd;classMyclass{public:Myclass(inti:0){cout1<<;}Myclas
设有表示学生选课的三张表,学生S(学号,姓名,性别,年龄,身份证号),课程C(课号,课名),选课SC(学号,课号,成绩),则表SC的关键字(键或码)为()。
执行下列语句段后,输出字符“*”的个数是()。for(inti=50;i>l;i-=2)cout
关于关键字class和typename,下列表述中正确的是()。
以下关键字不能用来声明类的访问权限的是()。
随机试题
作为独立的法人实体和市场主体,企业存在的直接目的是()。
引领宾客进入按摩室,按摩师应走在宾客前方2~3步远的地方。()
试管婴儿的主要适应证是()。
逆行肾盂造影的禁忌证是
()是出租人根据承租人对出卖人、租赁物的选择,向出卖人购买租赁物,提供给承租人使用,承租人支付租金的合同。
2011年1月,甲公司将闲置厂房出租给乙公司.合同约定每月租金2500元,租期未定。签订合同时,预收租金5000元,双方已按定额贴花。5月底合同解除。甲公司收到乙公司补交租金7500元。甲公司5月份应补缴印花税()。
篝火:驱逐:寒冷
当代中国法的本质属性是()。
软件开发模型(Software Development Model)是指软件开发全部过程、活动和任务的结构框架。渐增模型是在快速开发一个(1)的基础上,逐步演化成最终的软件。螺旋模型综合了(2)的优点,并增加了(3)。喷泉模型描述的是面向(4)的开发过程,
Secondhandsmokeisaccountablefor42,000deathsannuallytononsmokersintheUnitedStates,includingnearly900infants,acc
最新回复
(
0
)