信管网案例分析

导航

软件设计师下午真题及答案11

2021年07月23日来源:信管网 作者:cnitpm

为帮助广大软考中级软件设计师考生更好备考,信管网特整理汇总了软件设计师部分下午真题、答案及解析供考生查阅,并提供免费在线模拟答题、历年真题免费下载等服务,了解软件设计师更多备考信息请关注信管网。

相关推荐:

点击查看/下载:软件设计师历年真题汇总

点击查看:软件设计师在线培训课程免费试听课程

免费练习:软件设计师考试题库(模拟试题、章节练习、每日一练)

阅读下列说明和c++代码,应填入 (n) 处。

【说明】

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

为支持将来能够模拟更多种类鸭子的特征,采用策略设计模式(strategy)设计的类图如图10-11所示:

其中,duck为抽象类,描述了抽象的鸭子,而类rubberduck、mallardduck、 cottonduck和redheadduck分别描述具体的鸭子种类,方法fly()、quack()和display()分别表示不同种类的鸭子都具有飞行特征、发声特征和外观特征;类flybehavior与 quackbehavior为抽象类,分别用于表示抽象的飞行行为与发声行为:类flynoway与 flywithwings分别描述不能飞行的行为和用翅膀飞行的行为;类quack、squeak与 quacknoway分别描述发出“嘎嘎”声的行为、发出橡皮与空气摩擦声的行为与不发声的行为。请填补以下代码中的空缺。

【c++代码】

#include

using namespace (1) ; class flybehavior{

public: (2) fly()=0;

};

class quackbehavior{

public: (3) quack() = 0;

};

class flywithwings:public flybehavior{

public:void fly(){ cout<< “使用翅膀飞行 ! ” <

};

class flynoway:public flybehavior{

public:void fly(){ cout<< “不能飞行!”<

};

class quack:public quackbehavior{

public:void quack(){ cout<<“发出\‘嘎嘎\’声 !”<

};

class squeak:public quackbehavior{

public:void quack(){cout<<“发出空气与橡皮摩擦声!”<

};

class quacknoway:public quackbehavior{

public:void quack (){ cout<<“不能发声 !”<

};

class duck{

protected:

flybehavior* (4) ;

quackbehavior* (5) ;

public:

void fly(){ (6) ; }

void quack(){ (7) ;);

virtual void display()=0;

};

class rubberduck:public duck{

public:

rubberduck(){

flybehavior=new (8) ;

quackbehavior=new (9) ;

}

~rubberduck(){

if(!flybehavior)delete flybehavior;

if(!quackbehavior) delete quackbehavior;

}

void display(){/*此处省略显示橡皮鸭的代码*/ }

};

//其他代码省略

查看答案与解析:www.cnitpm.com/st/245551202.html

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

分享至:
请使用浏览器的分享功能,把好文章分享给更多的人

信管网 - 信息系统项目管理专业网站

下载APP-在线学习

培训课程

0元畅享

考试题库

免费资料

APP下载