信管网每日一练
软件设计师 - 每日一练 导航

软件设计师案例分析每日一练试题(2022/11/23)

2022年11月24日来源:信管网 作者:cnitpm

软件设计师案例分析当天每日一练试题地址:www.cnitpm.com/exam/ExamDayAL.aspx?t1=4

往期软件设计师每日一练试题汇总:www.cnitpm.com/class/27/e4_1.html

软件设计师案例分析每日一练试题(2022/11/23)在线测试:www.cnitpm.com/exam/ExamDayAL.aspx?t1=4&day=2022/11/23

点击查看:更多软件设计师习题与指导

软件设计师案例分析每日一练试题内容(2022/11/23)

阅读下列说明和C++代码,将应填入  (n)  处的字句写在答题纸的对应栏内。
【说明】
某发票(lnvoice)由抬头(Head)部分、正文部分和脚注(Foot)部分构成。现采用装饰( Decorator)模式实现打印发票的功能,得到如图5-1所示的类图。

【C++代码】
#include
using namespace std;
class Invoice{ public:
(1)    {
cout<<"This is the content of the invoice!"< }
};
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 printInvoice() {
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.printInvoice();
cout<<”------------------------”< FootDecorator a(NULL)
HeadDecorator b(     (5)    );
b.printInvoice();
return 0;
}
程序的输出结果为:
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!
信管网试题答案与解析:www.cnitpm.com/st/3817318035.html

信管网考友试题答案分享:

信管网试题答案与解析:www.cnitpm.com/st/3817318035.html

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

分享至:

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

下载APP-在线学习

培训课程

0元畅享

考试题库

免费资料

客服咨询