首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列说明和C++代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 某公司的组织结构图如图16.10所示,现采用组合(Composition)设计模式来构造该公司的组织结构, 得到如图16一11所示的类图。 其eOC
阅读下列说明和C++代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 某公司的组织结构图如图16.10所示,现采用组合(Composition)设计模式来构造该公司的组织结构, 得到如图16一11所示的类图。 其eOC
admin
2014-11-13
71
问题
阅读下列说明和C++代码,将应填入(n)处的字句写在答题纸的对应栏内。
【说明】
某公司的组织结构图如图16.10所示,现采用组合(Composition)设计模式来构造该公司的组织结构,
得到如图16一11所示的类图。
其eOCompany为抽象类,定义了在组织结构图上添加(Add)和删除(Delete)分公司/办事处或者部门
的方法接口。类ConcreteCompany表示具体的分公司或者办事处,分公司或办事处下可以设置不同的部门。类
HRDepartment和FinanceDepartment分别表示人力资源部和财务部。
【C++代码】
#include
#include<1ist>
#include
US ing namespace std;
class Company(//抽象类
protected:
String name;
public:
Company(string name)((1)=name;)
(2) ;//增加子公司、办事处或部门
(3) ;//删除子公司、办事处或部门
};
clasS ConcreteCompany:public Company(
private:
list< (4) >children;//存储子公司、办事处或部门
publ ic:
ConcreteCompany(string name):Company(name)()
void Add(Company*C)(5).push back(c);)
void Delete(Company*C){6).remove(C);)
};
Class HRDepartment:public Company(
public:
HRDepartment(string name):Company(name){}//其他代码省略
};
class FinanceDepartment:publ ic Company{
public:
FinanceDepartment(string name):Company(name)()//其他代码省略
};
VOid main(){
ConcreteCompany*root=new ComcreteCompany(“北京总公司”);
root一>Add(new HRDepartment(“总公司人力资源部”));
root一>Add(new F inanceDepartment(“总公司财务部”));
ConcreteCompany*comp=new ConcreteCompany(“上海分公司”);
comp一>Add(new HRDepartment(“上海分公司人力资源部”));
comp一>Add(new FinanceDepartment(“上海分公司财务部”));
(7) ;
ConcreteCompany*compl:new ConcreteCompany(“南京办事处”);
comp 1一>Add(new HRDepartment(“南京办事处人力资源部”));
comp 1一>Add(new FinanceDepartment(“南京办事处财务部”));
(8);//其他代码省略
选项
答案
(1)this一>name (2)virtual void Add(Company*c)=0 (3)virtual void Delete(Company*C)=0 (4)Company* (5)Children (6)Children (7)root一>Add(comp) (8)comp一>Add(compl)
解析
初始化函数中,将形参的值付给成员name,形参的变量名和成员变量的名称相同,需要使this指针指示被赋值的name是类的成员。增加(删除)子公司、办事处或部门用到的函数是Add和Delete。由于C0mpany是抽象类,并作为ConcreteCompany、HRDepartment、FinanceDepartment的基类,ConcreteCompany、HRD印anment继承了其父类的Add和Delete操作,因此在基类中要将Add和DeIete设置为纯虚函数。类ConcreteCompany表示具体的分公司或者办事处,其中的成员children用来存储子公司、办事处或部门,其数据类型应为Company*,当进行增加操作时,要把增加的对象存储在children的最后;当进行删除操作,则需要从children中将对应的对象移除。
(7)处的操作是把上海分公司这个对象加入到北京公司总部中。
(8)处的操作是将南京办事处这个对象加入到上海分公司中。
转载请注明原文地址:https://kaotiyun.com/show/t4DZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
[Java源程序:一个简单的Web服务器]/************************************************************//*WebServer.java*//******
在应用服务器关机的情况下,公司员工能连接上因特网吗?简要解释。公司内部的电话、传真机与ISDN的连接情况如图9-3所示。将图中(1)和(2)处空缺的设备名称填写在答题纸相应位置。
阅读以下说明,回答问题1至问题3,将解答填入答题纸对应的解答栏内。说明网络解决方案如图4-1所示。该网络原先使用的是国外品牌的交换机,随着网络规模的扩大,增添了部分国产品牌的交换机,交换机1至交换机5均是国产10M/100M自适应交换机,交换机6
同一个VLAN中的成员可以形成一个广播域,从而实现何种功能?若交换机Switch1和SwiWh2没有千兆端口,在上图10中能否实现VLANTrunk的功能?若能,如何实现?
同一个VLAN中的成员可以形成一个广播域,从而实现何种功能?在交换机中配置VLAN时,VLANl是否需要通过命令创建?为什么?
阅读以下说明,回答问题1~7。[说明]下图是在网络中划分VLAN的连接示意图。VLAN可以不考虑用户的物理位置,而根据功能、应用等因素将用户从逻辑上划分为一个个功能相对独立的工作组,每个用户主机都连接在支持VLAN的交换机端口上,并属于某个VLA
阅读以下说明,回答问题1~5。[说明]SSL(SecureSocketLayer)是目前解决传输层安全问题的一个主要协议,其设计的初衷是基于TCP协议之上提供可靠的端到端安全服务,SSL的实施对于上层的应用程序是透明的。应用SSL协议最广泛
双绞线可以制作成直连线和交叉线两种形式。在上图中,两个交换机的UPLINK口相连,使用的双绞线制作成什么形式?连接交换机和计算机的双绞线制作成什么形式?阅读下面的配置信息,解释(5)处的命令。Switch#Switch#config
请认真阅读下列有关计算机网络防火墙的说明信息,回答问题1~5。[说明]某单位的内部局域网通过防火墙与外部网络的连接方式及相关的网络参数如下图所示。
在“管理工具”中运行“管理IP筛选器列表”,创建一个名为“SNMP消息”的筛选器。在如图12-3所示的“IP筛选器向导”中指定IP通信的源地址,下拉列表框中应选择(1);在如图12-4中指定IP通信的目标地址,下拉列表框中应选择(2)。在图
随机试题
下列选项中,与资本回收系数互为倒数关系的是()
有人把个别的、局部的经验当做普遍真理,到处搬用,否认科学理论的指导意义。这在认识论上犯了类似于()
用头针治疗痴呆可选择哪些穴位
年轻恒牙深龋常选用何种药物促进修复性牙本质形成
题1—53图示正弦交流电路中,R=XC=5Ω,则供出的有功功率是()W。
一国的外汇储备最稳定和可靠的来源是()。
陈述性知识是个人能用语言进行直接陈述的知识,也叫______。
下列对SCI—90的描述中,正确的是()。
CD-DA在多媒体的发展史上立下了不朽的功勋,20世纪80年代初就确定了声音采样频率为44.1kHz,并且成为标准。问录制74分钟的CD-DA声音需要多少MB的存储空间(按1MB=1024×1024字节计算,不计文件格式本身所占用的空间。四舍五入取整数),
Bilingual(双语的)educationinschoolshaslongbeenapoliticalhotpotato—itwasbannedinCaliforniabya1998ballotmeasure,wh
最新回复
(
0
)