首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列说明和C++代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 某公司的组织结构图如图16.10所示,现采用组合(Composition)设计模式来构造该公司的组织结构, 得到如图16一11所示的类图。 其eOC
阅读下列说明和C++代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 某公司的组织结构图如图16.10所示,现采用组合(Composition)设计模式来构造该公司的组织结构, 得到如图16一11所示的类图。 其eOC
admin
2014-11-13
91
问题
阅读下列说明和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
软件设计师下午应用技术考试
软考中级
相关试题推荐
在应用服务器关机的情况下,公司员工能连接上因特网吗?简要解释。在路由器和ISDN之间需要加入终端适配器(TA)吗?试说明在什么情况下需要加入TA。
在由L2TP构建的VPN中,主要由①和②两种类型的服务器构成。1.将图5-1中①和②处空缺名称填写在答题纸的相应位置。2.简要说明两种服务器的主要作用。某路由器(在图5-1中没有标出)的部分配置信息如下所示,请解释其中标有下划线部分的含
限制MailUser邮件主机里每个用户的邮箱大小不超过10MB,如何配置?IMail安装完成后,系统自动建立了一个名为root的用户,在默认情况下root用户是个失效的账号,如何设置使其生效?
同一个VLAN中的成员可以形成一个广播域,从而实现何种功能?若网络用户的物理位置需要经常移动,应采用什么方式划分VLAN?
目前无线局域网主要有哪两大标准体系?简述各自特点。图1-2中“EncryptionLevel”选项用以配置WEP。WEP采用的加密技术是什么?“值”备选项中应包含两种长度为多少的密钥?
双绞线可以制作成直连线和交叉线两种形式。在上图中,两个交换机的UPLINK口相连,使用的双绞线制作成什么形式?连接交换机和计算机的双绞线制作成什么形式?阅读下面的配置信息,将(1)~(4)处空缺的内容填写在相应位置。SW1>enable
请认真阅读下列有关计算机网络防火墙的说明信息,回答问题1~5。[说明]某单位的内部局域网通过防火墙与外部网络的连接方式及相关的网络参数如下图所示。
阅读以下说明,回答问题1至问题5。[说明]某企业采用Windows2000操作系统部署企业虚拟专用网(VPN),将企业的两个异地网络通过公共Internet安全地互联起来。微软Windows2000操作系统当中对IPSec具备完善的支持,下图
网络设计流程通常由以下五个阶段组成:A.确定网络物理结构B.确定网络逻辑结构C.对现有网络的体系结构进行分析D.安装和维护E.需求分析根据网络开发设计的过程,给出上述五个阶段的先后排序:(1)。将答
随机试题
简述我国税收优先权适用的情形。
下列不符合败血症的描述是
急性肾小球肾炎与急进性肾小球肾炎临床相似之处为
A.补中益气汤B.生化汤合失笑散C.保阴煎D.五味消毒饮合失笑散E.归脾汤晚期产后出血感染邪毒证治疗方剂为
关于阿尔茨海畎病的描述。错误的是
在设备工程项目监理中,()是项目监理机构开展监理工作的指导方针,是制定设备,监理规划的大纲。
关于移动通信系统描述正确的有()。
某生产企业(增值税一般纳税人),2014年7月销售化工产品取得含税销售额793.26万元,为销售货物出借包装物收取押金15.21万元,约定3个月内返还;当月没收逾期未退还包装物的押金1.3万元。该企业2014年7月上述业务计税销售额为()。
课堂情境结构包括班级规模的控制、课堂常规的建立和_________。
Therelationshipbetweentheopeningparagraphandtherestoftextisthat______.Theword"ire"(Line1Paragraph4)mostpr
最新回复
(
0
)