首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
某咖啡店当卖咖啡时,可以根据顾客的要求在其中加入各种配料,咖啡店会根据所加入的配料来计算费用。咖啡店所供应的咖啡及配料的种类和价格如表16-1所示。 现采用装饰器(Decorator)模式来实现计算费用的功能,得到如图16-4所示的类图。
某咖啡店当卖咖啡时,可以根据顾客的要求在其中加入各种配料,咖啡店会根据所加入的配料来计算费用。咖啡店所供应的咖啡及配料的种类和价格如表16-1所示。 现采用装饰器(Decorator)模式来实现计算费用的功能,得到如图16-4所示的类图。
admin
2015-06-03
58
问题
某咖啡店当卖咖啡时,可以根据顾客的要求在其中加入各种配料,咖啡店会根据所加入的配料来计算费用。咖啡店所供应的咖啡及配料的种类和价格如表16-1所示。
现采用装饰器(Decorator)模式来实现计算费用的功能,得到如图16-4所示的类图。
【C++代码】
#include
#include
USing namespace std;
const int ESPRESSO_PRICE=25;
const int DRAKROAST_PRICE=20;
const int MOCHA_PRICE=10;
const int WHIP_PRICE=8;
class Beverage{ //饮料
(1):String deScription;
public:
(2)(){return description;}
(3);
};
class condimentDecorator :public Beverage { //配料
protected:
(4);
};
class Espresso:public Beverage{ //蒸馏咖啡
public:
Espresso ( ) { description=”Espresso”;}
int cost( ){return ESPRESSO PRICE;}
};
class DarkRoast:public Beverage{ //深度烘焙咖啡
public:
DarkRoast( ){ description= “DardRoast”;}
int cost(){return DRAKROAST PRICE;}
};
class Mocha :public condimentDecorator { //摩卡
public:
Mocha(Beverage*beverage) {this->beverage=beverage;}
string getDescription( ){return beverage->getDescription( )+“,Mocha”;}
int COSt( ){ return MOCHA PRICE+beVerage->cost( );}
};
class Whip :public condimentDecorator { //奶泡
public:
Whip(Beverage*beuerage) {this->beverage=beverage; }
string getDescription( ) {return beverage->getDescription( )+“,Whip”;}
int cost( ) { return WHIP PRICE+beverage->cost( );}
};
int meln() {
Beverage*beverage=new DarkRoast( );
beverage=new Mocha((5));
beverage=new Whip((6));
cout<
getDescription ( )<<“¥”<
cost( ) endl;
return 0;
}
编译运行上述程序,其输出结果为:
DarkRoast, Mocha, Whip ¥38
选项
答案
(1)protected (2)virtual string getDescription (3)virtual int cost()=0 (4)Beverage*beverage (5)beverage (6)beverage
解析
本题考查了C++语言的应用能力和装饰设计模式的应用。
第(1)空很明显,是要说明属性description在类Beverage中的类型,应该是私有的、受保护的或公有的,从后面的程序可以看出,子类中继承使用了该属性,因此这里只能定义为受保护的,因此第(1)空的答案为protected。
第(2)空处也很明显,是要给出一个函数的定义,并且该函数的函数体是“retumdescription;”,从子类奶泡和摩卡中不难发现这个函数应该是getDescription,因此本空的答案为virtual string getDescription。
第(3)空需要结合后面各子类才能发现,在Beverage中还应该定义一个函数cost,而这个函数在Beverage中并没有实现,因此要定义为纯虚函数,所以第(3)空的答案为virtual int cost()=0。
第(4)空在类CondimentDecorator中,且是该类唯一的一条语句,而它的子类分别是奶泡和摩卡,在奶泡和摩卡这两个类中,都用到了Beverage*beverage,而在使用之前并没有说明,因此这就可以说明,Beverage*beverage是在父类CondimentDecorator中定义的,子类直接继承使用,因此第(4)空的答案为Beverage*beverage。
第(5)和第(6)空在主函数当中,其中第(5)空是要创建一个Mocha对象,应该调用的是类Mocha的构造函数。从类Mocha中,可以看出,其构造函数Mocha的参数是一个Beverage类型的对象指针,而在主函数中,开始就定义了一个Beverage类型的对象指针beverage,因此这里只需填写beverage即可。同理第(6)空的答案也是beverage。
转载请注明原文地址:https://www.kaotiyun.com/show/2dDZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
假定提供Web服务的两台Linux服务器IP地址分别为192.168.1.10和192.168.1.20。为了使用DNS循环机制,由主机名www.test.com对外提供一致的服务,需要在DNS服务器的test.com区域文件中增加下列内容:www
在Windows2003中,(1)不能实现NAT功能。A.终端服务管理器B.Internet连接共享C.路由和远程访问为了实现部门A和部门B中主机互相通信,在服务器1和服务器2上都运行了“路由和远程访问”服务,在下图所示的
IPSec工作在TCP/IP协议栈的(1),为TCP/IP通信提供访问控制、(2)、数据源验证、抗重放、(3)等多种安全服务。IPSec的两种工作模式分别是(4)和(5)。(1)~(5)备选答案:A.应用层B.网络层C.数据链
下图为RouterB上的路由表信息,写出查询路由表的命令:(1)。该路由器上运行的路由协议为(2)。行政办公楼部门A所属网络地址是(3),部门B所属网络地址是(4)。在主机D上使用命令TracertDNSServer,显示结
阅读以下关于在ISDN网中应用点对点协议(PPP)和按需拨号路由(DDR)技术的说明,结合网络拓扑图回答问题1至问题4。【说明】综合数字业务网(ISDN)由数字电话和数据传输服务两部分组成,提供基本速率接口(BRI)和基群速率接口(PRI)两种服
以下是使用E1线路实现多个64Kbit/s专线连接。当链路为T1时,channel-group编号为0~23,Timeslot范围为1~24;当链路为E1时,channel-group编号为0~30,Timeslot范围为1~31.路由器
在图4-8所示的无线接待室中WLAN采用的体系结构如图4-9所示,请将(1)~(3)空缺处填写完整IEEE802.11标准采取了认证和加密措施,其中(9)具有控制图4-8所示的拓扑结构中无线接待室WLAN接入的能力。IEEE802.11标准提供WEP
阅读以下有关网络设备安装与调试的叙述,分析设备配置文件,回答问题1、问题2和问题3。现以一台远程访问服务器(RemoteAccessServer,RAS)Cisco2509、RJ45为例来说明。第1步,准备安装与调试所需的设备,主要包
阅读以下说明,回答问题1、问题2、问题3、问题4和问题5,将解答填入对应栏内。[说明]Web服务器是在网络中为实现信息发布、资料查询、数据处理等诸多应用搭建基本平台的服务器。处理Web页面大致可分为3个步骤,原理如图8-2所示,域名是www
简述网络规划阶段需求分析的方法和解决的问题。(控制在100个字以内)在需求分析过程中应对已有网络的现状及运行情况作调研,如果要在已有的网络上作新的网络建设规划,如何保护用户已有投资?(控制在100个字以内)
随机试题
根据韦伯对合法性统治的分类,世袭制属于()
陈亮,字同甫,学者称_______。所作政论纵横犀利,词风豪放,近辛弃疾。有《______》、《______》。其《水调歌头》(不见南师久)是一首___________,____________是此词的显著特色。
维生素C注射液处方:维生素C碳酸氢钠亚硫酸氢钠依地酸二钠A主药BpH调节剂C抗氧剂D金属离子络合剂E溶剂碳酸氢钠是
一般手术区皮肤的准备(备皮),一般是提前()。
犯虚假广告罪的对象是()。
案例1.事故经过某日,一制药有限责任公司污水处理改造工程施工工地,施工队正在进行混凝土浇筑,参与施工作业的包括现场负责人邹某在内共有19人。其中:木工赵某等8人负责制模、装模,泥工王某等4人负责砌墙、混凝土浇筑,杂工刘某等6人负责扎架、
马克思指出,实现人的全面发展的唯一途径是()。
()占眼球纤维膜的5,6,为乳白色不透明的纤维组织,厚而坚韧,有保护眼球内容物和维持眼球形态的作用。
对比效应是指自己与别人相比较时,感觉到与比较目标的差距,从而产生消极的情感体验。与之相对的是投射效应,即在认知或对他人形成印象时,以为他人也具备与自己相似的特性,即推己及人的情形。根据上述定义,下列属于对比效应的是()。
简述口颌系统肌链的临床意义。
最新回复
(
0
)