首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列说明和C++代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 某实验室欲建立一个实验室环境监测系统,能够显示实验室的温度、湿度以及洁净度等环境数据。当获取到最新的环境测量数据时,显示的环境数据能够更新现在采用观察者(observ
阅读下列说明和C++代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 某实验室欲建立一个实验室环境监测系统,能够显示实验室的温度、湿度以及洁净度等环境数据。当获取到最新的环境测量数据时,显示的环境数据能够更新现在采用观察者(observ
admin
2015-12-01
48
问题
阅读下列说明和C++代码,将应填入(n)处的字句写在答题纸的对应栏内。
【说明】
某实验室欲建立一个实验室环境监测系统,能够显示实验室的温度、湿度以及洁净度等环境数据。当获取到最新的环境测量数据时,显示的环境数据能够更新现在采用观察者(observer)模式来开发该系统,观察者模式的类图如图5—1所示。
(c++代码)
#include
#include
Using namespace std;
Class Observer{
Public:
Virtual void update(float temp,float humidity,float cleanness)=0;
);
Class Subject{
Public:
Virtual void registerObserver(Observer*o)=0;//注册对主题感兴趣的观察者
Virtual void removeObserver(Observer*o)=0;//删除观察者
Virtual void notifyObservers()=0;//当主题发生变化时通知观察者
}
Class EnvironmentData:publ ic (1) {
Private:
Vector
observers:
Float temperature,humidity,cleanness;
Public:
Void registerobserVer(0bserVer* o){observers.push—back(o); )
Void removeObserver(Observer*O)</*代码省略*/}
Vo id not ifyObservers(){
for(vector
::const iterator it=observers.begin();it!=observers.end();it++)
{ (2) ;}
}
Void measurementsChanged(){ (3) ;}
Void setMeasurements(float temperature,float humidity,float cleanness){
this->temperature=temperature:
this->humidity=humidity;
this一>cleanness=cleanness:
(4) ;
}
};
Class CurrentconditionsDisplay:publ ic (5) {
private:
float temperature,humidity,cleanness;
Subject*envData;
Public:
CurrentConditionsDisplay(Subject* envData){
this一>envData=envData;
(6) :
}
Void update(float temperature,float humidity,float cleanness)(this一>temperature=temperature;
This->humidity=humidity;
This一>cleanness=cleanness;
display();
}
Void display(){/*代码省略*/)
};
int main(){
EnvironmentData*envData。new EnvironmentData0:
CurrentConditionsDisplay*currentDisplay=new CurrentConditionsDisplay(envData):
envData->setMeasurements(80,65,30.4f);
return 0;
}
选项
答案
(1)Subject (2)(*it)一>update(temperature,humidity,cleanness) (3)notifyObservers() (4)measurementsChanged() (5)Observer() (6)this一>envData-->registerObserver(this)
解析
当主题中的环境发生变化,也就是调用measurementsChanged(),会通知观察者,即调用notifyObservers(),在notifyObservers()方法中,观查者会调用自身的update(float temperature,float humidity,float cleanness)。在主题的registerobserver(0bserve*o)中会注册对主题感兴趣的观察者。
转载请注明原文地址:https://www.kaotiyun.com/show/DdDZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
阅读以下说明,回答问题1至问题3,将解答填入解答栏内。【说明】某公司租用了一段C类地址203.12.11.0/24~203.12.14.0/24,如下图所示。其网间地址是172.11.5.14/24。要求网内所有PC都能上网。
请在(1)、(2)、(3)、(4)空白处填写恰当的内容。Web客户机与服务器共同遵守(1)协议,其工作过程是;Web客户端程序根据输入的(2)连接到相应的Web服务器上,并获得指定的Web文档。动态网页以(3)程序的形式在服务器端处理,并给客户端返
阅读下列说明,回答问题1至问题6,将解答填入解答栏内。【说明】某公司的两个部门均采用Windows2003的NAT功能共享宽带连接访问Internet,其网络结构和相关参数如下图所示。ISP为该公司分配的公网IP地址段为202.117.12.3
IPSec工作在TCP/IP协议栈的(1),为TCP/IP通信提供访问控制、(2)、数据源验证、抗重放、(3)等多种安全服务。IPSec的两种工作模式分别是(4)和(5)。(1)~(5)备选答案:A.应用层B.网络层C.数据链
为了使DNS_Server1能正确解析本地Web站点的域名,需对DNS_Server1中的DNS服务进行配置。在图1所示的对话框中,新建的区域名称是(1);在图2所示的对话框中,添加的新建主机名称为(2),IP地址栏应填入(3)。在客户端除了可以用p
为了使DNS_Server1能正确解析本地Web站点的域名,需对DNS_Server1中的DNS服务进行配置。在图1所示的对话框中,新建的区域名称是(1);在图2所示的对话框中,添加的新建主机名称为(2),IP地址栏应填入(3)。DNS_Server
请在(1)~(4)空白处填写恰当的内容。DHCP的工作过程是:1)IP租用请求。DHCP客户机启动后,发出一个DHCPDISCOVER消息,其封包的源地址为(1),目标地址为(2)。2)IP租用提供。当DHCP服务器收到DHCPDI
阅读以下关于动态主机配置协议(DHCP)的说明,回答问题1至问题4。【说明】在小型网络中,IP地址的分配一般都采用静态方式,需要在每台计算机上手工配置网络参数,诸如IP地址、子网掩码、默认网关和DNS等。在大型网络中,采用DHCP完成基本网络配置
阅读以下说明,回答问题1至问题3,将解答填入对应的解答栏内。【说明】某校园网申请到了C类网络地址块202.115.0.0/24~202.115.3.0/24。根据网络规划需求,网络中心、图书馆、教学实验楼以及行政办公楼的各个部门需划分到不同网段。
在RAS上存在着两个RJ45的端口,分别为“Console”与“AUX”,请问这两个端口的用途是什么?(控制在100个字以内)在调用超级终端程序进行设备连接时,应该对设备的连接参数进行正确设置,参数主要包括串口数据传输率、数据位数、停止位数以及是否有奇
随机试题
试述轻型腹泻和重型腹泻的临床表现。
异位妊娠急性内出血孕妇的护理措施错误的是
书写病区报告时,对新入院病人哪项不需叙述( )。
患者,男性,32岁。1个月来感乏力、低热、盗汗,夜间不能右侧卧位。查体:左肺叩浊音,下肺呼吸音消失,上肺呼吸音粗,心率110次/min,律齐。根据患者的病情,最佳治疗方案是
A、芫花B、藜芦C、犀角(现已禁用)D、巴豆E、芒硝不属于妊娠禁忌用药的是()
()是行使国家立法权的全国人民代表大会及其常务委员会制定的规范性文件,在全国范围内具有普遍的约束力。
在电子商务合同的订立过程中,避免贸易纠纷确立的原则是()。
运输企业是基础性和社会性行业,运输经营的微利性甚至不盈利性是一个主要特征,因而盈亏平衡分析对运输企业经营效果评价不十分适应。()
A、Hecan’tgetaroomatthehotel.B、Hedidn’tgetthetypeofroomhewanted.C、Heexpectedtheroomtobemoreexpensive.D、H
Hishonestyis______;nobodycandoubtit.
最新回复
(
0
)