首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列说明和C++代码。 [说明] 某大型商场内安装了多个简易的纸巾售卖机,自动出售2元钱一包的纸巾,且每次仅售出一包纸巾。纸巾售卖机的状态图如图5-1所示。 采用状态(State)模式来实现该纸巾售卖机,得到如图5-2所示的类图。其中类
阅读下列说明和C++代码。 [说明] 某大型商场内安装了多个简易的纸巾售卖机,自动出售2元钱一包的纸巾,且每次仅售出一包纸巾。纸巾售卖机的状态图如图5-1所示。 采用状态(State)模式来实现该纸巾售卖机,得到如图5-2所示的类图。其中类
admin
2012-03-21
63
问题
阅读下列说明和C++代码。
[说明]
某大型商场内安装了多个简易的纸巾售卖机,自动出售2元钱一包的纸巾,且每次仅售出一包纸巾。纸巾售卖机的状态图如图5-1所示。
采用状态(State)模式来实现该纸巾售卖机,得到如图5-2所示的类图。其中类State为抽象类,定义了投币、退币、出纸巾等方法接口。类SoldState、SoldOutState、NoQuarterState和HasQuarterState分别对应图5-1中纸巾售卖机的4种状态:售出纸巾、纸巾售完、没有投币、有2元钱。
[C++代码]
#include <iostream>
using namespace std;
//以下为类的定义部分
class TissueMachine; //类的提前引用
class State {
public:
virtual void insertQuarter()=0; //投币
virtual void ejectQuarter()=0; //退币
virtual void turnCrank()=0; //按下“出纸巾”按钮
virtual void dispense()=0; //出纸巾
};
/*类SoldOutState、NoQuarterState、HasQuarterState、SoldState的定义省略,
每个类中均定义了私有数据成员TissueMachine* tissueMachine;*/
class TissueMachine {
private:
(1) *soldOutState, *noQuarterState, *hasQuarterState,*soldState,
*state;
int count; //纸巾数
public:
TissueMachine (int numbers);
void setState (State* state);
State* getHasQuarterState();
State* getNoQuarterState()j
State* getSoldState();
State* getSoldOutState();
int getCount()j
//其余代码省略
};
//以下为类的实现部分
void NoQuarterState ::insertQuarter() {
tissueMachine->setState( (2) );
}
void HasQuarterState ::ejectQuarter() {
tissueMachine->setState( (3) );
}
void SoldState ::dispense() {
if (tissueMachine->getCount()>0) {
tissueMachine->setState( (4) );
}
else {
tissueMachine->setState( (5) );
}
} //其余代码省略
(3)
选项
答案
tissueMachine->getNoQuarterState()
解析
转载请注明原文地址:https://kaotiyun.com/show/FeDZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
某开发小组欲开发一个大型软件系统,需求变化较小,此时最不适宜采用()过程模型。
统一过程(UP)是一种用例驱动的迭代式增量开发过程,每次迭代过程中主要的工作流包括捕获需求、分析、设计、实现和测试等。这种软件过程的用例图(Use Case Diagram)是通过(19)得到的。
关于集成测试的描述中,正确的是(41)。①集成测试也叫做组装测试或联合测试,通常是在单元测试的基础上,将所有模块按照概要设计说明书和详细设计说明书的要求进行组装和测试的过程。②自顶向下的增殖方式是集成测试的一种组装方式,它能较早地验证主要的控制和判断点
采用________________表示带符号数据时,算术运算过程中符号位与数值位采用同样的运算规则进行处理。
以下不属于在需求分析阶段编写的文档是
CPU执行指令时,先要根据程序计数器将指令从内存读取出并送入______,然后译码并执行。
阅读以下说明,回答问题1和问题2。说明二层隧道协议L2TP(Layer2TunnelingProtocol)是一种基于点对点协议PPP的二层隧道协议。某网络结构如图5-1所示,采用L2TP来实现网络安全。
阅读以下说明,回答问题1至问题3。[说明]某公司规模扩大,既要考虑保证目前土建装修的效果不被破坏,又要满足网络扩容和企业工作实际需求,同时还要保证投资不要过大。经过深入分析和研究对比,决定采用无线局域网组网来解决网络扩容的问题,网络拓扑如图1-1
阅读以下说明,回答问题1~6。[说明]某公司已有一个100用户的有线局域网。由于业务的发展,现有的网络不能满足需求,需要增加40个用户的网络连接,并在公司客户接待室连接网络以满足合作伙伴实时咨询的需求。现结合公司的实际情况组建无线局域网,具体拓扑
网络设计流程通常由以下五个阶段组成:A.确定网络物理结构B.确定网络逻辑结构C.对现有网络的体系结构进行分析D.安装和维护E.需求分析根据网络开发设计的过程,给出上述五个阶段的先后排序:(1)。为上
随机试题
简述员工的职业发展路径。
患者,男性,70岁。冠心病史10余年,冠状动脉造影检查后出现恶心、食欲缺乏。尿量350ml/24h,BP140/80mmHg,血红蛋白118g/L,血尿素氮22mmol/L,肌酐230μmol/L。该患者出现下列哪种情况时需立即行血液透析治疗
抗震设防烈度为7度的某高层办公楼,采用钢筋混凝土框架一剪力墙结构。当采用振型分解反应谱法计算时,在单向水平地震作用下某框架柱轴力标准值如下表所示:试问,在考虑双向水平地震作用的扭转效应中,该框架柱轴力标准值(kN)应与下列何项数值最为接近?
项目组织机构设置中的“管理跨度”原则是指()。
2014年5月,某市财政机关在对乙公司执行会计法律制度和会计人员遵守会计人员遵守会计职业道德情况进行检查中发现如下问题:(1)乙公司主管会计马某在编制2013年财务会计报告时,按照公司董事长授意,将年度财务会计报告的会计报表从亏损做出盈利。(2)会计人
下列属于稿酬所得的项目有()。
“直客式”个人汽车贷款运行模式下,借款申请人需要提供的申请材料不包括()。
某市区一家内资房地产开发公司在2011年1月一9月中旬开发写字楼一栋,总建筑面积10000平方米。在开发写字楼的过程中,取得土地使用权支付金额2400万元,发生房地产开发成本2600万元。9月一12月将写字楼全部销售,销售合同记载收入9600万元。该公司全
不可抗力与正当防卫一样均为一般侵权民事责任的抗辩事由。 ( )
我国对于基金会的设立采取的原则是()。
最新回复
(
0
)