首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下技术说明及C++代码,将C++程序中(1)~(5)空缺处的语句填写完整。 [说明] 在一公文处理系统中,开发者定义了一个公文类OfficeDoc,其中定义了公文具有的属性和处理公文的相应方法。当公文件中内容或状态发生变化时,关注此Of
阅读以下技术说明及C++代码,将C++程序中(1)~(5)空缺处的语句填写完整。 [说明] 在一公文处理系统中,开发者定义了一个公文类OfficeDoc,其中定义了公文具有的属性和处理公文的相应方法。当公文件中内容或状态发生变化时,关注此Of
admin
2010-01-15
44
问题
阅读以下技术说明及C++代码,将C++程序中(1)~(5)空缺处的语句填写完整。
[说明]
在一公文处理系统中,开发者定义了一个公文类OfficeDoc,其中定义了公文具有的属性和处理公文的相应方法。当公文件中内容或状态发生变化时,关注此OfficeDoc类对象的相应的DocExplorer对象都要更新其自身的状态。一个OfficeDoc对象能够关联一组DocExplorer对象。当OfficeDoc对象的内容或状态发生变化时,所有与之相关联的DocExplorer对象都将得到通知,这种应用被称为Observer(观察者)模式。以下代码采用C++语言实现,能够正确编译通过。
[C++代码]
选项
答案
Observer(观察者)模式的设计意图是:定义对象间的一种一对多的依赖关系,以便当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。首先,DocExplorer需要知道OfficeDoc是一个类,但由于OfficeDoc定义在DocExplorer之后,因此需要在DocExplorer类的定义前加上class OfficeDoc的声明,即(1)空缺处所填写的内容是:class OfficeDoc。 (2)空缺处可根据程序最后的构造函数的实现知道,应该填写OfficeDoc。在观察者模式中,不同的观察者更新自身的方法不同,因此(3)空缺处应填写virtual,而且程序最后的“=0”也表明是一个纯虚拟函数。 由(4)空缺处所在行的程序注释说明可知,所有与OfficeDoc相关联的对象更新自身状态,因此需要使用update函数。但update函数的参数是一个OfficeDoc类的对象,所以参数应该为this。 (5)空缺处所在行语句的功能是,将OfficeDoc类的对象和DocExplorer类的对象相关联,关联的函数是OfficeDoc中的attach方法,其参数是一个DocExplorer对象,使用this能够表示当前的对象,因此该空缺处应填写attach(this)。
解析
转载请注明原文地址:https://kaotiyun.com/show/JcDZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
在各种不同的软件需求中,(36)描述了用户使用产品必须要完成的任务,可以用UML建模语言的(37)表示。(37)
某公司采用的软件开发过程通过了CMM2认证,表明该公司(30)。
以下测试内容中,属于系统测试的是()。①单元测试②集成测试③安全性测试④可靠性测试⑤兼容性测试⑥可用性测试
关于汇编语言,以下叙述中正确的是(20)。
软件测试按实施组织分,测试应该包括以下的(50)。①开发方测试②用户方测试③第三方测试④验收测试⑤确认测试
高级程序设计语言中用于描述程序中的运算步骤、控制结构及数据传输的是(20)。
按照开发阶段划分,软件测试可以分为______。①单元测试②集成测试③系统测试④确认测试⑤用户测试⑥验收测试⑦第三方测试
对于关键字序列(10,34,37,51,14,25,56,22,3),用线性探查法解决冲突构造哈希表,哈希函数为H(key)=key%11,关键字25存入的哈希地址编号为________________。
一个程序的控制流图中有8个节点、12条边。在测试用例数最少的情况下,确保程序中每个可执行语句至少执行一次所需测试用例数的上限是________________。
在各种不同的软件需求中,()描述了产品必须要完成的任务,可以在用例模型中予以说明。
随机试题
从文献中得到同类研究的两个率比较的四格表资料,其x2检验结果为:甲文x2>x20.01(1),乙文x2>x20.05(1),可认为
A.初生~9个月B.9~10个月C.2~6岁D.4~5岁E.6~8岁语言准备阶段是()
建设项目招标公告与投标邀请书上应当载明(),以及获取招标文件的办法。
某项目有四种方案,各方案的投资、现金流量及有关评价指标见下表。若已知基准收益率ic=16%,则经比选最优方案为( )。
用友软件中,()模块的主要功能是对软件的各个子系统进行统一的操作管理和数据维护。
我国《宪法》规定,公民的私有财产不受侵犯。()
DNA双螺旋是一种核酸的构象,在该构象中,两条反向平行的多核苷酸链相互缠绕形成一个右手的双螺旋结构。著名的DNA双螺旋结构模型是由()于1953年提出的。
WhichofthefollowingstepsarenecessaryinordertoaddanewVLANtotheEzonexamswitchednetwork?(Selectallthatapply)
将来、日本へ留学する________、日本語を習っています。
A、Shecan’tfindajob.B、Shedoesn’tknowhowtomanageabookstore.C、ShewantstoquithercurrentjobintheIBMoffice.D、
最新回复
(
0
)