為幫助廣大軟考中級軟件設(shè)計師考生更好備考,信管網(wǎng)特整理匯總了軟件設(shè)計師部分下午真題、答案及解析供考生查閱,并提供免費在線模擬答題、歷年真題免費下載等服務(wù),了解軟件設(shè)計師更多備考信息請關(guān)注信管網(wǎng)。
相關(guān)推薦:
點擊查看:軟件設(shè)計師在線培訓課程 丨 免費試聽課程
免費練習:軟件設(shè)計師考試題庫(模擬試題、章節(jié)練習、每日一練)
閱讀下列說明和c++代碼,應(yīng)填入 (n) 處。
【說明】
某游戲公司現(xiàn)欲開發(fā)一款面向兒童的模擬游戲,該游戲主要模擬現(xiàn)實世界中各種鴨子的發(fā)聲特征、飛行特征和外觀特征。游戲需要模擬的鴨子種類及其特征如表10-6所示:
為支持將來能夠模擬更多種類鴨子的特征,采用策略設(shè)計模式(strategy)設(shè)計的類圖如圖10-11所示:
其中,duck為抽象類,描述了抽象的鴨子,而類rubberduck、mallardduck、 cottonduck和redheadduck分別描述具體的鴨子種類,方法fly()、quack()和display()分別表示不同種類的鴨子都具有飛行特征、發(fā)聲特征和外觀特征;類flybehavior與 quackbehavior為抽象類,分別用于表示抽象的飛行行為與發(fā)聲行為:類flynoway與 flywithwings分別描述不能飛行的行為和用翅膀飛行的行為;類quack、squeak與 quacknoway分別描述發(fā)出“嘎嘎”聲的行為、發(fā)出橡皮與空氣摩擦聲的行為與不發(fā)聲的行為。請?zhí)钛a以下代碼中的空缺。
【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<<“發(fā)出\‘嘎嘎\’聲 !”<
};
class squeak:public quackbehavior{
public:void quack(){cout<<“發(fā)出空氣與橡皮摩擦聲!”<
};
class quacknoway:public quackbehavior{
public:void quack (){ cout<<“不能發(fā)聲 !”<
};
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(){/*此處省略顯示橡皮鴨的代碼*/ }
};
//其他代碼省略
溫馨提示:因考試政策、內(nèi)容不斷變化與調(diào)整,信管網(wǎng)網(wǎng)站提供的以上信息僅供參考,如有異議,請以權(quán)威部門公布的內(nèi)容為準!
信管網(wǎng)致力于為廣大信管從業(yè)人員、愛好者、大學生提供專業(yè)、高質(zhì)量的課程和服務(wù),解決其考試證書、技能提升和就業(yè)的需求。
信管網(wǎng)軟考課程由信管網(wǎng)依托10年專業(yè)軟考教研傾力打造,官方教材參編作者和資深講師坐鎮(zhèn),通過深研歷年考試出題規(guī)律與考試大綱,深挖核心知識與高頻考點,為學員考試保駕護航。面授、直播&錄播,多種班型靈活學習,滿足不同學員考證需求,降低課程學習難度,使學習效果事半功倍。
發(fā)表評論 查看完整評論 | |