首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请打开考生文件夹下的解决方案文件proj2,其中定义了vehicle类,并派生出motorcar类和bicycle类。然后以motorcar和bicycle作为基类,再派生出motorcycle类。要求将vehicle作为虚基类,避免二义性问题。请在程序中
请打开考生文件夹下的解决方案文件proj2,其中定义了vehicle类,并派生出motorcar类和bicycle类。然后以motorcar和bicycle作为基类,再派生出motorcycle类。要求将vehicle作为虚基类,避免二义性问题。请在程序中
admin
2020-10-21
61
问题
请打开考生文件夹下的解决方案文件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://www.kaotiyun.com/show/LNyp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和C代码,完成空出部分的程序,实现函数fun(char*s1,char*s2)将字符串s2连接在字符串s1之后,构成一个首指针为s1的字符串。注意:不能修改函数的其他部分。#in
使用VC6打开考生文件夹下的源程序文件modi1.cpp,使它能得出正确的结果。本程序要求屏幕输出:n=99注意:不要改动main函数,不能增行或删行,也不能更改程序的结构,错误的语句在//********error********的下面。#inc
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能:(1)完成CMyClass的构造函数,请改正注释//********1********后的错误。(2)完成func(1
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码。函数nurn(char*str)实现返回字符串中非数字的个数。例如:abcl23abc45返回输出:6将函数num()补充完整。注意:请勿改动主函数。#includ
使用VC6打开考生文件夹下的源程序文件modi1.cpp,该程序运行时有错误,请改正程序中的错误。本程序要求实现的功能为:从键盘输入一个字符串,并将结果保存到文件modi1.txt中。注意:不要改动main函数,不能增行或删行,也不能更改程序的结构,错误
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能:(1)完成类MyArrayClass的构造函数,申请数组的大小,请在注释//********1********后添加适当
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。(1)完成类TestClass1的成员函数seta定义,定义seta对象x为int类型,请在注释//********1********
将运算符重载为类成员函数时,其参数表中没有参数,说明该运算符是()。
有如下类定义:c1assMyClass{intx;public:MyClass():x(0),y(0){}intGetX(){retumx;}voidSetX(intxx){x=xx;
算法的时间复杂度是指()。
随机试题
不法申诉制度
天然蛋白质中不存在的氨基酸是
下列橡胶中,属于普通橡胶的是()。
现金支票只能用于支取现金,不能办理转账结算。()
下列关于票据发行便利的说法,正确的有()。
以国家或政府为主体的收支分配活动是()。
同业银行属于商业银行的()。
学习的新材料呈现之前提供一种引导性材料,它在新学习材料与学习者原有观念之间建起认知桥梁,这种教学策略是()。
微电影不仅铺设了一条年轻导演试水商业电影的缓冲地带,而且象征一种更为自由的创作空间和理念,镜头、情节、结构、音效等叙事元素都呈现出与传统电影不同的风格与诉求。比如,从电影到网络,再到手机,屏幕越来越小,特写成为微电影最基本的镜头语言,但这里的特写更多是一种
TheUnitedStatesconsistsoftwononcontiguousstates:Alaskaand______.
最新回复
(
0
)