軟件設計師案例分析當天每日一練試題地址:m.xiexiliangjiufa.com/exam/ExamDayAL.aspx?t1=4
往期軟件設計師每日一練試題匯總:m.xiexiliangjiufa.com/class/27/e4_1.html
軟件設計師案例分析每日一練試題(2025/5/6)在線測試:m.xiexiliangjiufa.com/exam/ExamDayAL.aspx?t1=4&day=2025/5/6
點擊查看:更多軟件設計師習題與指導
軟件設計師案例分析每日一練試題內(nèi)容(2025/5/6)
試題五(共15分)
閱讀下列說明和C++-代碼,將應填入(n)處的字句寫在答題紙的對應欄內(nèi)。
【說明】
某發(fā)票(lnvoice)由抬頭(Head)部分、正文部分和腳注(Foot)部分構(gòu)成。現(xiàn)采用裝飾(Decorator)模式實現(xiàn)打印發(fā)票的功能,得到如圖5-1所示的類圖。
【C++代碼】
#include<iostream>
using namespace std;
class invoice{
public:
(1){
cout<<"This is the content of the invoice!"<<endl;
}
};
class Decorator:public invoice{
Invoice*ticket;
public:
Decorator(lnvoice*t){ticket=t;}
void printinvoice(){
if(ticket!=NULL)
(2);
}
};
class HeadDecorator:public Decorator{
public:
HeadDecorator(lnvoice*t):Decorator(t){}
void printinvoice0{
cout<<"This is the header of the invoice!"<<endl;
(3);
}
};
class FootDecorator:public Decorator{
public:
FootDecorator(invoice*t):Decorator(t){}
void printlnvoice(){
(4);
cout<<"This is the footnote of the invoice!"<<endl;
}
};
int main(void){
Invoice t;
FootDecorator f(&t);
HeadDecorator h(&f);
H.printlnvoice();
cout<<“_____”<<endl;
FootDecorator a(NULL);
HeadDecorator b((5));
B.printinvoice();
return 0;
}
程序的輸出結(jié)果為:
This is the header of the invoice!
This is the content of the invoice!
This is the footnote of the invoice!
----------------------------
This is the header of the invoice!
This is the footnote of the invoice!
信管網(wǎng)考友試題答案分享:
信管網(wǎng)cnit*********:
1、 contentdecorator(invoice*t) :decorator(t){}
void printinvoice()
2、cout<< `ticket` <<endl;
信管網(wǎng)訂閱號
信管網(wǎng)視頻號
信管網(wǎng)抖音號
溫馨提示:因考試政策、內(nèi)容不斷變化與調(diào)整,信管網(wǎng)網(wǎng)站提供的以上信息僅供參考,如有異議,請以權(quán)威部門公布的內(nèi)容為準!
信管網(wǎng)致力于為廣大信管從業(yè)人員、愛好者、大學生提供專業(yè)、高質(zhì)量的課程和服務,解決其考試證書、技能提升和就業(yè)的需求。
信管網(wǎng)軟考課程由信管網(wǎng)依托10年專業(yè)軟考教研傾力打造,教材和資料參編作者和資深講師坐鎮(zhèn),通過深研歷年考試出題規(guī)律與考試大綱,深挖核心知識與高頻考點,為學員考試保駕護航。面授、直播&錄播,多種班型靈活學習,滿足不同學員考證需求,降低課程學習難度,使學習效果事半功倍。
發(fā)表評論 查看完整評論 | |