2007年上半年软件设计师下午试卷[6]

软考 责任编辑:abc12345 2007-08-03

添加老师微信

备考咨询

加我微信

摘要:试题六(共15分)阅读下列说明和C++代码,将应填入(n)处的字句写在答题纸的对应栏内。[说明]某游戏公司现欲开发一款面向儿童的模拟游戏,该游戏主要模拟现实世界中各种鸭子的发声特征、飞行特征和外观特征。游戏需要模拟的鸭子种类及其特征如表6-1所示:为支持将来能够模拟更多种类鸭子的特征,采用策略设计模式(Str

试题六(共15 分)

阅读下列说明和 C++代码,将应填入 (n) 处的字句写在答题纸的对应栏内。

[说明]

某游戏公司现欲开发一款面向儿童的模拟游戏,该游戏主要模拟现实世界中各种鸭子的发声特征、飞行特征和外观特征。游戏需要模拟的鸭子种类及其特征如表 6-1 所示:

为支持将来能够模拟更多种类鸭子的特征,采用策略设计模式(Strategy)设计的类图如

图 6-1 所示:

 

 其中,Duck 为抽象类,描述了抽象的鸭子,而类 RubberDuck、MallardDuck、CottonDuck和 RedHeadDuck 分别描述具体的鸭子种类,方法 fly()、quack()和 display()分别表示不同种类的鸭子都具有飞行特征、发声特征和外观特征;类 FlyBehavior 与 QuackBehavior 为抽象类,分别用于表示抽象的飞行行为与发声行为;类 FlyNoWay 与 FlyWithWings 分别描述不能飞行的行为和用翅膀飞行的行为;类 Quack、Squeak 与 QuackNoWay 分别描述发出“嘎嘎”声的行为、发出橡皮与空气摩擦声的行为与不发声的行为。请填补以下代码中的空缺。

[C++代码]

#include< iostream>

using namespace (1);

classFlyBehavior {

public:(2) fly() = 0;

};

classQuackBehavior {

public:(3)quack() = 0;

};

classFlyWithWings:publicFlyBehavior{

public:void fly(){ cout〈〈“使用翅膀飞行!”〉〉endl; }

};

classFlyNoWay:publicFlyBehavior{

public: void fly(){ cout “不能飞行!” endl; }

};

classQuack:publicQuackBehavior{

public:void quack(){ “cout发出\'嘎嘎\'声!”endl; }

};

classSqueak:publicQuackBehavior{

public:voidquack(){ cout 〈〈“发出空气与橡皮摩擦声 !”〉〉endl;}

};

classQuackNoWay:publicQuackBehavior{

public:voidquack(){ cout 〈〈“不能发声 !”〉〉endl; }

};

[1]  [2]  [3]  [4]  [5]  [6]  [7]  [8]  

更多资料
更多课程
更多真题
温馨提示:因考试政策、内容不断变化与调整,本网站提供的以上信息仅供参考,如有异议,请考生以权威部门公布的内容为准!

软考备考资料免费领取

去领取

!
咨询在线老师!