首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列说明和c++代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 某软件公司现欲开发一款飞机飞行模拟系统,该系统主要模拟不同种类飞机的飞行特征与起飞特征。需要模拟的飞机种类及其特征如表5-l所示。 为支持将来模拟更多种类的
阅读下列说明和c++代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 某软件公司现欲开发一款飞机飞行模拟系统,该系统主要模拟不同种类飞机的飞行特征与起飞特征。需要模拟的飞机种类及其特征如表5-l所示。 为支持将来模拟更多种类的
admin
2011-01-29
51
问题
阅读下列说明和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://kaotiyun.com/show/aqDZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
对于初始为空的栈S,入栈序列为a、b、c、d,且每个元素进栈、出栈各1次。若出栈序列的第一个元素为d,则合法的出栈序列为______。
GB17859-1999《计算机信息系统安全保护等级划分准则》中将计算机安全保护划分为(53)个级别。
在各种不同的软件需求中,()描述了产品必须要完成的任务,可以在用例模型中予以说明。
软件内部/外部质量模型中,以下(66)不是功能性包括的子特性。
面向对象分析与设计是面向对象软件开发过程中的两个重要阶段,下列活动中,(25)不属于面向对象分析阶段。
以下关于信息和数据的描述中,错误的是________________。
现有四级指令流水线,分别完成取指、取数、运算、传送结果4步操作。若完成上述操作的时间依次为9ns、10ns、6ns、8ns,则流水线的操作周期应设计为(2)ns。
(41)不是易用性测试包括的内容。
下面为C语言程序,边界值问题可以定位在(45)。 int data(3), int i, for(i=1, i<=3, i++)data(i)=100
结构化分析(StructuredAnalysis,SA)是面向数据流的需求分析方法,______不属于SA工具。A.分层的数据流图B.数据词典C.问题分析图D.描述加工逻辑的结构化语言、判定表或判定树
随机试题
A.用法用量B.药物相互作用C.禁忌D.药物过量根据《化学药品和治疗用生物制品说明书规范细则》了解用药疗程或者规定用药期限,可查阅()。
下列各项中,属于会计计量属性的有()。
下列关于深圳证券交易所证券转托管的说法,正确的有()
导游员小王在与领队商定第二天的日程安排时,发现领队所持的计划是第二天游览豫园和外滩,而自己的计划却是游览上海博物馆和南京路。这时小王的正确做法是()。
心理测量的工具是()。
实行警务公开的原因有()。
十月革命推翻的政府是()。(对外经贸2010翻译硕士)
下列选项中,()不属于人员配备管理计划的内容。
OnthemorningofSeptember11th,IboardedthetrainfromWashingtonHeightsinUpperManhattanjustasusualandwenttotheB
Bytheendofthenineteenthcentury,citieswerereimbursingprivatehospitalsfortheircareof______patientsandthepublic
最新回复
(
0
)