首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列说明和C++代码。 [说明] 某大型商场内安装了多个简易的纸巾售卖机,自动出售2元钱一包的纸巾,且每次仅售出一包纸巾。纸巾售卖机的状态图如图5-1所示。 采用状态(State)模式来实现该纸巾售卖机,得到如图5-2所示的类图。其中类
阅读下列说明和C++代码。 [说明] 某大型商场内安装了多个简易的纸巾售卖机,自动出售2元钱一包的纸巾,且每次仅售出一包纸巾。纸巾售卖机的状态图如图5-1所示。 采用状态(State)模式来实现该纸巾售卖机,得到如图5-2所示的类图。其中类
admin
2012-03-21
45
问题
阅读下列说明和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://jikaoti.com/ti/mui7FFFM
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
(1)不属于计算机控制器中的部件。
若计算机存储数据采用的是双符号位(00表示正号、11表示负号),两个符号相同的数相加时,如果运算结果的两个符号位经()运算得1,则可断定这两个数相加的结果产生了溢出。
分配给某公司网络的地址块是210.115.192.0/20,该网络可以被划分为()个C类子网。
关于确认测试,描述正确的是(39)。①确认测试一般包括有效性测试与软件配置复查,采用黑盒测试为主,白盒测试为辅的测试方法进行测试。②确认测试配置项复查时应当严格检查用户手册和操作手册中规定的使用步骤的完整性和正确性。③确认测试需要检测与证实软件是否满
某系统中,模块A处理与销售相关的所有细节,仅需要发送一个包含销售量、价格和时间的报表到模块B,则这两个模块之间为()耦合。
在计算机外部设备和主存之间直接传送而不是由CPU执行程序指令进行数据传送的控制方式称为(5)________________。
对于逻辑表达式(bufc[i]>223&&bufc[i]<240&&i+2<totalbytes),需要______个测试用例才能完成条件组合覆盖。
函数main()、f()的定义如下所示。调用函数f()时,第一个参数采用传值(callbyvalue)方式,第二个参数采用传引用(callbyreference)方式,main()执行后输出的值为_______。
阅读以下说明,回答问题1~7。[说明]下图是在网络中划分VLAN的连接示意图。VLAN可以不考虑用户的物理位置,而根据功能、应用等因素将用户从逻辑上划分为一个个功能相对独立的工作组,每个用户主机都连接在支持VLAN的交换机端口上,并属于某个VLA
该DHCP服务器可分配的IP地址有多少个?在Windows操作系统下,DHCP客户端“Internet协议(TCP/IP)属性”配置界面如下图所示。在此界面中,客户端应如何配置?
随机试题
下列有关高等学校专业划分的说法不正确的一项是()。
布莱克窝洞分类的是根据A.窝洞所在韵部位B.牙的解剖形态C.龋洞发生的部位D.不同牙面的功能E.龋损发生的深度
X公司为增值税一般纳税企业,主要生产和销售甲产品,适用增值税率17%。所得税税率25%,不考虑其他相关税费,该公司20×8年发生以下业务:(1)销售甲产品一批,该批产品的成本16万元,销售价格40万元,专用发票注明增值税6.8万元,产品已经发出,
目前,根据规定,商业银行间的债权回购业务( )。
下列各项中,符合城建税规定的有()。
记账凭证是会计人员根据原始凭证,按照经济业务事项的内容加以归类,并据以确定会计分录后所填制的会计凭证,它是登记账簿的直接依据。()
学习行业先进创一流践行群众路线争先锋据河南旅游咨询网报道:为进一步提高党的群众路线教育实践活动效果,践行局党组提出的全省旅游行业向云台山风景名胜区管理局学习的决定,使党员干部更加准确把握学习的基本内容和精神实质,9月27日至28日,省旅游局局长寇
设随机试验成功的概率p=0.20,现在将试验独立地重复进行100次,则试验成功的次数介于16和32次之间的概率α=____.
面向对象的开发方法中,(23)是面向对象技术领域内占主导地位的标准建模语言,用这种语言描述系统与外部系统及用户之间交互的图是(24)。
在数据库应用系统开发的需求调研阶段,需要对用户提出的需求进行分析和整理。此过程不仅需要描述用户提出的具体功能需求,也需要对用户未明确提出的非功能需求进行描述。设在某商场经营管理系统的需求分析阶段整理了下列需求:Ⅰ.系统需要支持会员制Ⅱ.系统不需
最新回复
(
0
)