首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,其中定义了vehicle类,并派生出motorcar类和bicycle类。然后以motorcar和bicycle作为基类,再派生出motorcycle类。要求将vehicle作为虚基
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,其中定义了vehicle类,并派生出motorcar类和bicycle类。然后以motorcar和bicycle作为基类,再派生出motorcycle类。要求将vehicle作为虚基
admin
2018-06-19
35
问题
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程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( ) {return MaxSpeed;}
int getWeight( ) {return Weight;}
};
//**********found**********
class bicycle:_________public vehicle
{
private:
int Height;
public:
bicycle(int maxspeed,int weight,int height):Vchicle(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<<a.getMaxSpeed( )<<end1;
cout<<a.getWeight( )<<end1;
cout<<a.getHeight( )<<end1;
cout<<a.getSeatNum( )<<end1;
}
选项
答案
(1)MaxSpeed(maxspeed),Weight(weight){ }; (2)virtual (3)vinual (4)public bicycle,public motorear
解析
(1)主要考查考生对构造函数的掌握,构造函数使用初始化列表来对私有成员MaxSpeed和weight初始化。
(2)主要考查考生对派生类的掌握,题目要求将vehiele作为虚基类,避免二义性问题。因此在这里添加virtual使vehicle成为虚基类。
(3)主要考查考生对派生类的掌握,题目要求以motorcar和bicycle作为基类,再派生出motorcyele类。在主函数中可以看到motorcyele类的实例a调用getHeight函数和getseatNum函数,由此可知这两个基类都是公有继承,因此得出语句:public bicycle,public motorcar。
转载请注明原文地址:https://jikaoti.com/ti/btt0FFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下面程序的输出结果是【】。#include<iostream.h>#include<math.h>classpoint{doublex;doubley;public:point(doublea,doub
下列关于类和对象的叙述中,错误的是()。
类模板template<classT>classx{...},其中友元函数f对特定类型T(如int),使函数f(x<int>)成为x<int>模板类的友元,则其说明为()。
派生类中的成员不能直接访问基类中的()成员。
静态成员函数没有()。
下列程序编译错误,因为add函数返回值是一个引用,故对return返回值的要求是______。#include(iostream.h)int&add(intx,inty){returnx+y,}voidm
已知Value是一个类,Value是Value的一个对象。下列以非成员函数形式重载的运算符函数原形中,正确的是()。
下列运算符函数中肯定不属于类FunNumber的成员函数的是()。
在E-R图中,用来表示实体的图形是()。
随机试题
诊断肾病综合征时,不含哪项表现?()
以下关于中长期贷款描述不正确的是()。
某公司年终利润分配前的股东权益项目资料如表1所示。公司股票的每股现行市价为35元。要求:计划按每10股送1股的方案发放股票股利,并按发放股票股利后的股数每股派发现金股利0.2元。计算完成这一分配方案后的股东权益各项目数额。
下列外商投资项目均为限制类项目中,其中应当报省级政府核准的有()。
在物理层接口特性中,用于描述完成每种功能的事件发生顺序的是()。
我国现行宪法规定劳动是公民的()。
有如下类定义:classBox{public:Box(inth,intw,intl):width(w),length(l),height(h){}private:
TheSeattleTimesCompanyisonenewspaperfirmthathasrecognizedtheneedforchangeanddonesomethingaboutit.Inthene
Theageofrequiringretirementincompaniesshouldberaised,andso【M1】______shouldtheagetobeginSocialSecurity.First
A、Theywerethemostterribledisasteronearth.B、Theywerewarningsignsofsomebigevents.C、Theywereturnoversofthebig
最新回复
(
0
)