首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
(2012年上半年下午试题五)阅读下列说明和C++代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 某咖啡店卖咖啡时,可以根据顾客的要求在其中加入各种配料,咖啡店会根据所加入的配料来计算费用。咖啡店所供应的咖啡及配料的种类和价格
(2012年上半年下午试题五)阅读下列说明和C++代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 某咖啡店卖咖啡时,可以根据顾客的要求在其中加入各种配料,咖啡店会根据所加入的配料来计算费用。咖啡店所供应的咖啡及配料的种类和价格
admin
2018-07-27
38
问题
(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://kaotiyun.com/show/O7DZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
阅读以下说明,回答问题1、问题2、问题3和问题4,将解答填入对应栏内。[说明]现在,家居装修布线是一个大且细致的工程项目,除了要布设普通电源线、有线电视电缆和电话线、音响线、视频线等,越来越多的电脑爱好者家中的网络布线则是少不了的。如果不是
请指出现有虚拟局域网络的4种划分方式。以下为Cisco以太网交换机Catalyst2924(ws-c2924xlA,拥有24个10/100Mbit/s自适应端口)的VLAN划分命令,请解释(1)~(3)处的标有下划线部分配置命令的含义。(“//”后为
将图2-2中(1)和(2)空缺名称填写在对应的解答栏内。使ADSL的传输速率更高有哪两个主要因素?
如何根据网络流量选择联网设备,给出所选设备的作用。在我国,目前可供选择大的用户选择的接入方式有哪些,各自的接入速率为多少?
请用蒙特卡罗错误随机植入模型估算出被测程序模块中将会遗留下多少个未被发现的隐藏错误。请简要列出计算式子及计算过程。信息部门的吴总工程师向谢工程师建议了另一种测试方案作为“错误随机植入”测试方法的补充。即由A和B两组测试人员同时相互独立地测试同一份宽带路
阅读以下关于FTTC宽带接入Internet的技术说明,根据要求回答问题1至问题5。【说明】光纤接入网(OpticalAccessNetwork,OAN)是以光纤为传输媒体,并利用光波作为光载波传送信号的接入网。FTTC+LAN是实现居民宽带
认真阅读以下实现VLAN间路由的配置技术说明,根据要求回答问题1至问题6。【说明】当交换机上的VLAN数量很多时,通常会采用路由器快速以太网子接,及IEEE802.1Q封装对VLAN间的数据进行路由。在如图3-12所示的拓扑图中,在交换机
在安装RedhatLinux9.0操作系统的过程中,如果没有选择安装Web服务器,Apache服务器则需要手动安装。现从http://httpd.apache.org网站上免费下载了一个apache-2.2.3RPM格式的软件包,请将以下(1)空缺处
在图8-12所示的拓扑结构中的代理服务器上依次单击“开始→程序→管理工具→路由与远程访问,并在系统弹出的界面中打开“IP路由选择”目录树,然后用鼠标右键单击“NAT/基本防火墙”,选择[新增接口]命令。接着若选择接口1的“本地连接”,最后进行如图8-13所
在图8-12所示的拓扑结构中的代理服务器上依次单击“开始→程序→管理工具→路由与远程访问,并在系统弹出的界面中打开“IP路由选择”目录树,然后用鼠标右键单击“NAT/基本防火墙”,选择[新增接口]命令。接着若选择接口1的“本地连接”,最后进行如图8-13所
随机试题
下列情况中,发价不得撤销的是()
阅读余光中《听听那冷雨》中的文字,然后回答问题。雨不但可嗅,可观,更可以听。听听那冷雨。听雨,只要不是石破天惊的台风暴雨,在听觉上总是一种美感。大陆上的秋天,无论是疏雨滴梧桐,或是骤雨打荷叶,听去总有一点凄凉,凄清,凄楚。于今在岛上回味,则在凄楚
烟雾病是颅内哪部分血管的病变引起的
中药材气调养护,充N2降氧防虫的氧气浓度控制在气调养护,以杀虫为目的,其C02浓度应控制在
脾虚下陷的主要症状有
地下连续墙混凝土浇灌应满足以下要求()。[2014年真题]
MIPS作为单位,是用来衡量计算机系统的()性能指标。
某研究机构对于本地区的劳动力市场状况进行了研究,结果发现以下几种情况:第一,本地区的大部分企业都是劳动密集型企业,同时企业所生产的产品的需求价格弹性也比较大;第二,本地区男性劳动力和女性劳动力之间的交叉工资弹性较高,而且为负值;第三,本地区目前处于一种劳动
下列对洋务运动的指导思想的表述正确的是
PapermakinginChina________fromtheretoNorthAfricaandEurope.
最新回复
(
0
)