首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
(2012年上半年下午试题五)阅读下列说明和C++代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 某咖啡店卖咖啡时,可以根据顾客的要求在其中加入各种配料,咖啡店会根据所加入的配料来计算费用。咖啡店所供应的咖啡及配料的种类和价格
(2012年上半年下午试题五)阅读下列说明和C++代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 某咖啡店卖咖啡时,可以根据顾客的要求在其中加入各种配料,咖啡店会根据所加入的配料来计算费用。咖啡店所供应的咖啡及配料的种类和价格
admin
2018-07-27
31
问题
(2012年上半年下午试题五)阅读下列说明和C++代码,将应填入(n)处的字句写在答题纸的对应栏内。
【说明】
某咖啡店卖咖啡时,可以根据顾客的要求在其中加入各种配料,咖啡店会根据所加入的配料来计算费用。咖啡店所供应的咖啡及配料的种类和价格如表10.9所示。
现采用装饰器(Decorator)模式来实现计算费用的功能,得到如图10.29所示的类图。
【C++代码】
#include<iostream>
#include<string>
using namespace std;
const int ESPRESSO_PRICE=25;
const int DRAKROAST_PRICE=20 ;
const int MOCHA_PRICE=10;
const int WHIP_PRICE8;
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*beverage){this->beverage=beverage;}
string getDescription() {return beverage->getDescription()+’’,Whip’’; }
int cost() ( return WHIP PRICE+beverage->cost(); }
};
int msin() {
Beverage*beverage=new DarkRoast();
beVerage=new Mocha(______(5));
beVerage=new Whip( ______(6));
cout<<beverage->getDescription()<<’’¥’’<<beverage->cost()<<end1;
return 0;
}
编译运行上述程序,其输出结果为:
DarkRoast,Mocha,Whip,¥38
选项
答案
(1)protected (2)virtual string getDescription (3)virtual int cost()=0 (4)Beverage*beverage (5)beverage (6)beverage
解析
由类图可知,Beverage是基类,Espresso、DarkRoast、CondimentDecorator是Beverage的派生类,Mocha、Whip又是CondimentDecorator的派生类。
空(1)处应填入description的访问控制类型,可能为private或protected。在Beverage的派生类Espresso的初始化函数中直接使用了description,由此可知,在基类中,description的访问控制类型为protected。如果为private,则在派生中不能使用。
在基类中先后动态建立了一个DarkRoast对象、Mocha对象和Whip对象,调用初始化函数,输出在Mocha类和Whip类中分别调用了基类的getDescription()和cost()。
空(2)处和空(3)处考查构造函数的定义。从空(2)处构造函数体中返回值的类型及后续的子类继承程序可知,空(2)处应填入virtual string getDescription;从public int cost() {retum ESPRESSO_PRICE;}可以看出,cost()函数的返回值为常量,因此空(3)处应填入virtual int cost()。
空(4)处考查对CondimentDecorator的定义,在该类中声明一类成员变量,并在this->beverage=beverage和retum beverage->getDescription()+’’,Mocha’’中加以使用。因此空(4)处应填入Beverage*beverage。
空(5)处和空(6)处考查实例化类模板的方法。类模板必须在实例化后才能使用。实例化类模板时,要给出类型实参。从类图可知,空(5)处和空(6)处均应填入beverage。
转载请注明原文地址:https://www.kaotiyun.com/show/O7DZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
请问无线局域网的工作模式有哪几种?常见的无线网络协议有哪些?
从图7-1中可以看出采用什么拓扑结构与设计方法?为了进一步简化系统,有人建议把“电脑模块”与“电话模块”合成一个模块,其传输介质共用,这可以实现吗?
目前,通过移动电话接入互联网所采用的主要技术是什么?进行一次查询的数据信息见表1-1,网络的基本通信服务费用见表1-2,总费用=网络租用费+通信费。根据表中给出的数据,试计算销售员每月至少应进行多少次查询,才能使得使用移动电话的总费用比使用PDA的总费
某单位拟建立一个Intranet,建立自己的Web服务器、DNS服务器,E-mail服务器和内部业务服务器,有一批客户机联网,要求这些机器有的可以到Internet上,只允许访问自己的Web服务器。请你做出规划,解决如下问题。
阅读以下说明,回答问题1至问题3。【说明】路由器中IP访问控制列表能够帮助控制网上包的传输。
结合图7-18所示的网络拓扑结构图,将以下路由器R1配置信息中(1)~(9)空缺处的内容填写完整,实现路由器R1的正确配置。Router>en(进入特权模式)Router#
阅读以下基于Linux操作系统部署DHCP服务的技术说明,根据要求回答问题1至问题3。【说明】某地市图书馆内部局域网划分为办公区、电子阅览室、无线阅览室等3个VLAN,并通过一台带防火墙模块的路由器与Internet网互连。为了便于整个局域网IP
在安装RedhatLinux9.0操作系统的过程中,如果没有选择安装Web服务器,Apache服务器则需要手动安装。现从http://httpd.apache.org网站上免费下载了一个apache-2.2.3RPM格式的软件包,请将以下(1)空缺处
为了便于用户下载相关资料,特安装一台FTP服务器,其服务器端软件是Serv-U,假如要增加一个名为CIU10009的用户,对应目录为D盘,且要求加密,在图6-4中怎么设置?假如想将某用户在设咸FTP服务器管理员,其用户名称不变,请问在“Privileg
随机试题
钣金件相贯线的求法有()。
利用润滑油的循环流动,将机械运转中产生的热量带走,保证机械工作正常,这属于润滑油的()作用。
发送传真时,颜色深,对比度高的文稿应选择对比度为()
肺主通调水道的功能主要依赖于
“八议”中有“议宾”一项,“宾”指:
下列对设计概算的作用内容的理解,正确的有()。
填写报检单时,报检单位应加盖单位公章,所列各项内容必须填写完整、清晰、不得涂改。“标记及号码”一栏应填写实际货物运输包装上的标记,如果无标记,应填写N/M。( )
某公司拟折价发行债券,面值1000元,发行价格980元,期限为5年、票面年利率为8%,每年年末付息一次.到期一次还本,债券发行费率为1.5%.企业所得税税率为25%,采用一般模式计算该债券的资本成本为()。
旅游突发事件,是指突然发生,造成或者可能造成旅游者人身伤亡、财产损失,需要采取应急处置措施予以应对的自然灾害、事故灾难、公共卫生事件和社会安全事件。()
HowtoApproachaDissertationI.WhatisadissertationA.Apieceofwritingwithargument:—analyzetheevidencetosupport
最新回复
(
0
)