软件设计师2022下半年模拟—下午题之十四
作者:wx6125d801a4b782024-01-09 01:00:13
备考咨询 刷题指导
添加专属学姐
2024上半年软考备考资料+考试大纲
下载
摘要:对于【软件设计师】软考考试而言,试题无疑是最重要的学习资料之一。在软考备考过程中,吃透试题、掌握试题所考知识点、熟悉试题的出题思路,对我们提升分数的效果是最明显的,通过对试题的反复练习,还可以查漏补缺。今天,给大家带来【软件设计师2022下半年模拟—下午题】部分试题的详解,一起来看看吧~1、试题五(15分)阅读下列说明和C++代码,将应填入 (n)
摘要:对于【软件设计师】软考考试而言,试题无疑是最重要的学习资料之一。在软考备考过程中,吃透试题、掌握试题所考知识点、熟悉试题的出题思路,对我们提升分数的效果是最明显的,通过对试题的反复练习,还可以查漏补缺。今天,给大家带来【软件设计师2022下半年模拟—下午题】部分试题的详解,一起来看看吧~
1、试题五(15分)阅读下列说明和C++代码,将应填入 (n) 处的字句写在答题纸的对应栏内。【说明】 某软件系统中,已设计并实现了用于显示地址信息的类Address(如图5-1所示),现要求提供基于Dutch语言的地址信息显示接口。为了实现该要求并考虑到以后可能还会出现新的语言的接口,决定采用适配器(Adapter)模式实现该要求,得到如图5-1所示的类图。 图5-1 适配器模式类图【C++代码】 #include <iostream>using namespace std; class Address{public: void street() { /* 实现代码省略 */ } void zip() { /* 实现代码省略 */ } void city() { /* 实现代码省略 */ }∥其他成员省略}; class DutchAddress {public: virtual void straat()=0; virtual void postcode()=0; virtual void plaats()=0; //其他成员省略}; class DutchAddressAdapter : public DutchAddress {private: (1) ;public: DutchAddressAdapter(Address *addr) { address = addr; } void straat() { (2) ; } void postcode(){ (3) ; } void plaat(){ (4) ; }//其他成员省略}; void testDutch(DutchAddress *addr){ addr->straat(); addr->postcode(); addr->plaats();} int main(){ Address*addr = new Address(); (5) ; cout << "\n The DutchAddress\n" << endl; testDutch(addrAdapter); return 0;}
答案:
答题解析:无
1、试题五(15分)阅读下列说明和C++代码,将应填入 (n) 处的字句写在答题纸的对应栏内。【说明】 某软件系统中,已设计并实现了用于显示地址信息的类Address(如图5-1所示),现要求提供基于Dutch语言的地址信息显示接口。为了实现该要求并考虑到以后可能还会出现新的语言的接口,决定采用适配器(Adapter)模式实现该要求,得到如图5-1所示的类图。 图5-1 适配器模式类图【C++代码】 #include <iostream>using namespace std; class Address{public: void street() { /* 实现代码省略 */ } void zip() { /* 实现代码省略 */ } void city() { /* 实现代码省略 */ }∥其他成员省略}; class DutchAddress {public: virtual void straat()=0; virtual void postcode()=0; virtual void plaats()=0; //其他成员省略}; class DutchAddressAdapter : public DutchAddress {private: (1) ;public: DutchAddressAdapter(Address *addr) { address = addr; } void straat() { (2) ; } void postcode(){ (3) ; } void plaat(){ (4) ; }//其他成员省略}; void testDutch(DutchAddress *addr){ addr->straat(); addr->postcode(); addr->plaats();} int main(){ Address*addr = new Address(); (5) ; cout << "\n The DutchAddress\n" << endl; testDutch(addrAdapter); return 0;}
答案:
(1)Address* address;
(2)address->street();
(3)address->zip();
(4)address->city();
(5)DutchAddress *addr=new DutchAddressAdaptor(addr);
答题解析:无
查看完整试题>>>
软考资料: 2024年软考论文范文> 软考考试核心重点难点汇总> 查看更多>
备考刷题:章节练习+每日一练> 软考历年试题+模拟题>查看更多>