首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
某咖啡店当卖咖啡时,可以根据顾客的要求在其中加入各种配料,咖啡店会根据所加入的配料来计算费用。咖啡店所供应的咖啡及配料的种类和价格如表16-1所示。 现采用装饰器(Decorator)模式来实现计算费用的功能,得到如图16-4所示的类图。
某咖啡店当卖咖啡时,可以根据顾客的要求在其中加入各种配料,咖啡店会根据所加入的配料来计算费用。咖啡店所供应的咖啡及配料的种类和价格如表16-1所示。 现采用装饰器(Decorator)模式来实现计算费用的功能,得到如图16-4所示的类图。
admin
2015-06-03
45
问题
某咖啡店当卖咖啡时,可以根据顾客的要求在其中加入各种配料,咖啡店会根据所加入的配料来计算费用。咖啡店所供应的咖啡及配料的种类和价格如表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
软件设计师下午应用技术考试
软考中级
相关试题推荐
1.路由器第一次设置时,必须通过Console口连接运行终端仿真软件的计算机进行配置,此时终端仿真程序设置的波特率应为(1)b/s。2.路由器有多种配置模式,请根据以下命令提示状态,判断路由器处于何种配置模式下。Router(Config)
阅读以下说明,回答问题1和问题2,将解答填入对应的解答栏内。【说明】某单位内部网络拓扑结构如下图所示,在该网络中采用RIP路由协议。
请在(1)~(4)空白处填写恰当的内容。DHCP的工作过程是:1)IP租用请求。DHCP客户机启动后,发出一个DHCPDISCOVER消息,其封包的源地址为(1),目标地址为(2)。2)IP租用提供。当DHCP服务器收到DHCPDI
阅读以下关于动态主机配置协议(DHCP)的说明,回答问题1至问题4。【说明】在小型网络中,IP地址的分配一般都采用静态方式,需要在每台计算机上手工配置网络参数,诸如IP地址、子网掩码、默认网关和DNS等。在大型网络中,采用DHCP完成基本网络配置
阅读以下有关传统局域网络运行和维护的叙述,将应填入(n)处的字句写在对应栏内。在对网络运行及维护前首先要了解网络,包括识别网络对象的硬件情况、判别局域网的拓扑结构和信道访问方式、确定网络互联以及用户负载等。常见的3种拓扑结构是星形、(1)与(2)拓
阅读以下某单位宽带网络接入的技术说明,根据要求回答问题1至问题6。【说明】接入网(AN)泛指用户网络接口(UNI)与业务节点接口(SNI)间实现传送承载功能的实体网络。其目标是建立一种标准化的接,方式,以一个可监控的接入网络,使用户能够获得话音、
在RAS上存在着两个RJ45的端口,分别为Console与AUX,请问这两个端口的用途是什么?(控制在100个字以内)在调用超级终端程序进行设备连接时,应该对设备的连接参数进行正确设置,参数主要包括串口数据传输率、数据位数。停止位数以及是否有奇偶校验。
PGP协议采用RSA和IDEA两种加密算法组成链式加密体系,这种方案的优点是(1)。PGP还可以对电子邮件进行认证,认证机制是用MD5算法产生(2)位的报文摘要,发送方用自己的RSA私钥对(3)进行加密,附加在邮件中进行传送。公钥只用来加密(4),文件是用
L2TP协议是一种基于(1)协议的二层隧道协议,它结合了Cisco的L2F和MicrosoftPPTP的优点。该协议报文在传输层封装(2)协议之上,为了保证传输的可靠性,L2TP协议对控制报文采取了(3)机制,并要求tunne1对端设备在隧道(tunne
阅读以下关于交换机VTP协议配置的技术说明,根据要求回答问题1至问题4。【说明】利用VLAN技术可以把物理上连接的网络从逻辑上划分为多个不同的虚拟子网,可以对各个子网实施不同的管理策略。利用showvtpstatus命令在某台交换机的特权模式
随机试题
为什么铸铁不能采用一般的氧—乙炔切割方法进行切割?
以下哪项不会导致无反应偏差?()
下列关于颅中窝骨折病人的护理错误的是
以下各项中,()不属于海关非物理围网监管模式的监管。
已知A公司销售当季度收回货款50%,下季度收回货款40%,下下季度收回货款10%,预算年度期初应收账款金额为27万元,其中包括上年第三季度销售的应收账款7万元,第四季度销售的应收账款20万元,则下列说法不正确的是()。
如果会计师事务所向甲公司提供了非审计服务,那么甲公司应当()。
有关2014年6月的用电情况,下列各项增量最小的是:
A、Helpthewomanwithhercomputer.B、ShowhisPPTtothiswoman.C、Requestsomemoneyfromthiswoman.D、Askthewomantohelp
The______searchforthelostboysproved______andthesearchpartyreturnedhomeatnightfallquite______.
PlanningandPeopleInallkindsoforganizations--companies,schools,hospitals,etc.--decisionsappearcorrectintheory
最新回复
(
0
)