首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列说明和c++代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 某软件公司现欲开发一款飞机飞行模拟系统,该系统主要模拟不同种类飞机的飞行特征与起飞特征。需要模拟的飞机种类及其特征如表5-l所示。 为支持将来模拟更多种类的
阅读下列说明和c++代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 某软件公司现欲开发一款飞机飞行模拟系统,该系统主要模拟不同种类飞机的飞行特征与起飞特征。需要模拟的飞机种类及其特征如表5-l所示。 为支持将来模拟更多种类的
admin
2011-01-29
29
问题
阅读下列说明和c++代码,将应填入(n)处的字句写在答题纸的对应栏内。
【说明】
某软件公司现欲开发一款飞机飞行模拟系统,该系统主要模拟不同种类飞机的飞行特征与起飞特征。需要模拟的飞机种类及其特征如表5-l所示。
为支持将来模拟更多种类的飞机,采用策略设计模式(Strategy)设计的类图如图5—1所示。
图5-l中,AirCraft为抽象类,描述了抽象的飞机,而类Helicopter、AirPlane、Fighter和Harrier分别描述具体的飞机种类,方法fly( )和takeOff( )分别表示不同飞机都具有飞行特征和起飞特征;类FlyBehavior与TakeOffBehavior为抽象类,分别用于表示抽象的飞行行为与起飞行为;类SubSonicFly与SuperSonicFly分别捕述亚音速飞行和超音速飞行的行为;类Verti calTakeOff与LongDistanceTakeoff分别描述垂直起飞与长距离起飞的行为。
【C++代码】
#include
using namespace std;
class FlyBehavior{
public:virtual void fly( )=0;
};
class SubSonicFly:public FlyBehavior{
public: void fly( ){cout<<"亚音速飞行! "<
};
class SuperSonicFly:public FlyBehavior{
public: void fly( ){cout<<"超音速飞行!"<
};
Class TakeOffBehavior{
public:virtual void takeOff( )=0;
};
class VerticalTakeOff:public TakeOffBehavior{
public: void takeOff( ){cout<<"垂直起飞!"<
};
class LongDistanceTakeOff:public TakeOffBehavior{
public: void takeOff( ){cout<<"长距离起飞!"<
};
class AirCraft{
protected:
(1);
(2);
public:
void fly( ){ (3) }
void takeOff( ){ (4) ;};
};
class Helicopter:public AirCraft{
public:
Helicopter( ){
flyBehavior=new (5);
takeOffBehavior=new (6);
}
(7) {
if(! flyBehavior)delete flyBehavior;
if(!takeOffBehavior)delete takeoffBehavior:
}
};
//其它代码省略
选项
答案
(1)FlyBehavior flyBehavior (2)TakeOffBehavior takeOffBehavior (3)flyBehavior.fly( ) (4)takeOffBehavior.takeOff( ) (5)SuperSonicFly( ) (6)VerticalTakeOff( ) (7)Helicopter( )
解析
Helicopter类继承AirCraft类,引用了FlyBehavior类的对象flyBehavior和TakeOffBehavior类的对象takeOffBehavior。
因为AirCraft类没有实现fly( )和takeOff( ),所以需要在Helicopter类中添加FlyBehavior类的对象和TakeOffBehavior类的对象,故空(1)、空(2)应填FlyBehavior flyBehavior和TakeOffBehavior takeOffbehavior。
空(3)要实现flny行为故调用对象flyBehavior.fly( ),同理空(4)要实现takeOffBehavior行为故调用takeOffBehavior.takeOff()。
空(5)、空(6)考查多态调用,因为Helicopter类为垂直起飞和亚音速飞行,故应分别添SuperSonicFly( )和VerticalTakeOff( )。
空(7)应添写Helicopter类的析构函数,实现内存释放。
转载请注明原文地址:https://jikaoti.com/ti/U4i7FFFM
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
假设关系R1和R2如下图所示:若进行R1R2运算,则结果集分别为(1)元关系,共有(2)个元组。(2)
为检测系统所能承受的数据容量,应进行()。
堆是一种数据结构,分为大顶堆和小顶堆两种类型。大(小)顶堆要求父元素大于等于(小于等于)其左右孩子元素。则________________是一个小顶堆结构。堆结构用二叉树表示,则适宜的二叉树类型为________________。对于10个结点的小顶堆,其
程序员甲与同事乙在乙家探讨甲近期编写的程序,甲表示对该程序极不满意,说要弃之重写,并将程序手稿扔到乙家垃圾筒。后来乙将甲这一程序稍加修改,并署乙名发表。以下说法正确的是(11)。
某应用系统采用防火墙技术来实现安全防护,在进行安全防护测试时,设计的测试点不包括______。
驻留在多个网络设备上的程序在短时间内同时产生大量的请求消息冲击某Web服务器,导致该服务器不堪重负,无法正常响应其他合法用户的请求,这属于(9)。
(41)不是易用性测试包括的内容。
下图是①设计模式的类图,该设计模式的目的是②,图中,Abstraction和RefinedAbstraction之间是③关系,Abstraction和Implementor之间是④关系。③处应填入?
在性能测试中,关于数据准备,(65)描述是正确的。①识别数据状态验证测试案例。②初始数据提供了基线用来评估测试执行的结果。③业务数据提供负载压力背景。④脚本中参数数据真实模拟负载。
下图是________________设计模式的类图,该设计模式的目的是________________,图中,Decorator和Component之间是________________关系,ConcreteDecorator和Decorator之间是_
随机试题
在水溶液中,下列离子能将铁氧化成亚铁离子的是()。
镰刀细胞型贫血是由于
对影像增强器电子透镜的解释,错误的是
关于胸腔积液X线表现,叙述错误的是
病人接受全身麻醉后,由清醒状态到神志消失,并进入全麻状态后进行气管内插管的阶段称为全麻诱导期。()
旅游团在游东湖时,一游客提出希望单独划船游湖,导游员应()。
根据以下资料,回答下列问题。2008年全年:居民消费价格总水平上涨5.6%,其中食品类上涨13.2%;工业品出厂价格上涨3.1%,其中生产资料上涨3.7%,生活资料上涨2.0%;原材料、燃料、动力购进价格上涨7.9%,其中燃料、动力类上涨15.1
甲公司将一工程发包给乙建筑公司,经甲公司同意,乙公司将部分非主体工程分包给丙建筑公司,丙公司又将其中一部分分包给丁建筑公司。后丁公司因工作失误致使工程不合格,甲公司欲索赔。对此,下列说法正确的是
Thereisdistinctionbetweenreadingforinformationandreadingforunderstanding.【B1】______Thefirstsenseistheonein
IntheNewYorkstreetasmalltruckhitabigtree.Thetruckwasfullofglassesandtheywereall41now.Thedrivercameout
最新回复
(
0
)