首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,其中定义了vehicle类,并派生出motorcar类和bicycle类。然后以motorcar和bicycle作为基类,再派生出motorcycle类。要求将vehicle作为虚基
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,其中定义了vehicle类,并派生出motorcar类和bicycle类。然后以motorcar和bicycle作为基类,再派生出motorcycle类。要求将vehicle作为虚基
admin
2018-06-19
37
问题
请使用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://kaotiyun.com/show/nAAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
数据库系统中实现各种数据管理功能的核心软件称为【】。
下列程序的输出结果是()。#ificlude<iostream>usingnamespacestd;intmain(){cout.fill(’*’);cout.width(5);cout
下列是重载为非成员函数的运算符函数原型,其中错误的是()。
有下列二叉树,对此二叉树前序遍历的结果为()。
以下()成员函数表示纯虚函数。
有下列程序:#include<iostream>usingnamespacestd;classTestClass{inta;public:TestClass(int
有如下函数模板定义:template<typenameT1,inta2,inta3>T1fun(T1a1){return(al+a2+a3);}则下列调用中正确的
参照函数模板的写法,完成非模板函数的定义,语句为______。#include<iostream.h)#include(string.h>template(classT)Tmin(Ta,Tb){return
已知Value是一个类,Value是Value的一个对象。下列以非成员函数形式重载的运算符函数原形中,正确的是()。
随机试题
Whentherearesmallchildrenaround,itisnecessarytoputbottlesofpillsoutof______.
权利人以自己单方的意思表示,使自己与他人之间的民事法律关系发生变动的权利为()
铁路桩板式挡土墙计算,在桩板墙的土压力计算中多采用折减系数()。
干缩会使木材发生()。
能够有助于维生素A缺乏判定的检查方法有()
教师王某经常让班里的幼儿在活动室外面罚站,王某的做法()。(2015年下半年真题)
下列各项中,权利有效期为10年的是()。
“吾爱吾师,但吾更爱真理”这句话出自古希腊的一位哲学家,其中的“吾师”是指()。(西南大学2010翻译硕士)
马克思曾说:“社会不是以法律为基础,那是法学家的幻想。相反,法律应该以社会为基础。法律应该是社会共同的,由一定的物质生产方式所产生的利益需要的表现,而不是单个人的恣意横行。”根据这段话所表达的马克思主义法学原理,下列哪一选项是正确的()
[*]
最新回复
(
0
)