2016年11月 软件设计师 下午题之五
作者:mb6059652fef3b12023-11-10 01:00:13
备考咨询 刷题指导
添加专属学姐
2024上半年软考备考资料+考试大纲
下载
摘要:对于【软件设计师】软考考试而言,真题无疑是最重要的学习资料之一。在软考备考过程中,吃透真题、掌握真题所考知识点、熟悉真题的出题思路,对我们提升分数的效果是最明显的,通过对真题的反复练习,还可以查漏补缺。今天,给大家带来【2016年11月 软件设计师 下午题】部分真题的详解,一起来看看吧~1、 阅读下列说明和C++-代码,将应填入 (n)
摘要:对于【软件设计师】软考考试而言,试题无疑是最重要的学习资料之一。在软考备考过程中,吃透试题、掌握试题所考知识点、熟悉试题的出题思路,对我们提升分数的效果是最明显的,通过对试题的反复练习,还可以查漏补缺。今天,给大家带来【2016年11月 软件设计师 下午题】部分试题的详解,一起来看看吧~
1、 阅读下列说明和C++-代码,将应填入 (n) 处的字句写在答题纸的对应栏内。【说明】 某发票(lnvoice)由抬头(Head)部分、正文部分和脚注(Foot)部分构成。现采用装饰( Decorator)模式实现打印发票的功能,得到如图5-1所示的类图。 【C++代码】#include<iostream>usingnamespace std;class Invoice{public: (1) { cout<<"This is the content of theinvoice!"<<endl; }};classDecorator : public Invoice { Invoice *ticket;public: Decorator(lnvoice *t) { ticket = t; } void printInvoice(){ if(ticket != NULL) (2); } };classHeadDecorator : public Decorator{public: HeadDecorator(lnvoice*t): Decorator(t) { } void printInvoice() { cout<< "This is theheader of the invoice! "<< endl; (3) ; } }; class FootDecorator : public Decorator{ public: FootDecorator(Invoice *t): Decorator(t) { } void printlnvoice(){ (4) ; cout<< "This is thefootnote of the invoice!"<< endl; }};int main(void){ Invoice t; FootDecorator f(&t); HeadDecorator h(&f); h.printInvoice(); cout<<”------------------------”<<endl; 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!
答案:
答题解析:
1、 阅读下列说明和C++-代码,将应填入 (n) 处的字句写在答题纸的对应栏内。【说明】 某发票(lnvoice)由抬头(Head)部分、正文部分和脚注(Foot)部分构成。现采用装饰( Decorator)模式实现打印发票的功能,得到如图5-1所示的类图。 【C++代码】#include<iostream>usingnamespace std;class Invoice{public: (1) { cout<<"This is the content of theinvoice!"<<endl; }};classDecorator : public Invoice { Invoice *ticket;public: Decorator(lnvoice *t) { ticket = t; } void printInvoice(){ if(ticket != NULL) (2); } };classHeadDecorator : public Decorator{public: HeadDecorator(lnvoice*t): Decorator(t) { } void printInvoice() { cout<< "This is theheader of the invoice! "<< endl; (3) ; } }; class FootDecorator : public Decorator{ public: FootDecorator(Invoice *t): Decorator(t) { } void printlnvoice(){ (4) ; cout<< "This is thefootnote of the invoice!"<< endl; }};int main(void){ Invoice t; FootDecorator f(&t); HeadDecorator h(&f); h.printInvoice(); cout<<”------------------------”<<endl; 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!
答案:
见解析
答题解析:
(1) virtual void printInvoice()
(2) ticket->printInvoice()
(3) Decorator::printInvoice()
(4) Decorator::printInvoice()
(5) &a
查看完整试题>>>
软考资料: 2024年软考论文范文> 软考考试核心重点难点汇总> 查看更多>
备考刷题:章节练习+每日一练> 软考历年试题+模拟题>查看更多>