首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列说明和C++代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 某公司的组织结构图如图16.10所示,现采用组合(Composition)设计模式来构造该公司的组织结构, 得到如图16一11所示的类图。 其eOC
阅读下列说明和C++代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 某公司的组织结构图如图16.10所示,现采用组合(Composition)设计模式来构造该公司的组织结构, 得到如图16一11所示的类图。 其eOC
admin
2014-11-13
87
问题
阅读下列说明和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。
阅读以下说明,回答问题1至问题4,将解答填人答题纸的对应栏内。[说明]某小公司的网络拓扑如图9-2所示。其中路由器具有ISDN模块,公司网络通过ISDN连接到ISP。
目前,通过移动电话接人互联网采用的主要技术是什么?进行一次查询的数据信息如表9-1所示,网络的基本通信服务费用如表9-2所示,总费用=网络租用费+通信费。根据表中给出的数据,试计算销售员每月至少应进行多少次查询,才能使得使用移动电话的总费用比使用PDA
阅读以下说明,回答问题1至问题3,将解答填入答题纸对应的解答栏内。说明网络解决方案如图4-1所示。该网络原先使用的是国外品牌的交换机,随着网络规模的扩大,增添了部分国产品牌的交换机,交换机1至交换机5均是国产10M/100M自适应交换机,交换机6
限制MailUser邮件主机里每个用户的邮箱大小不超过10MB,如何配置?IMail安装完成后,系统自动建立了一个名为root的用户,在默认情况下root用户是个失效的账号,如何设置使其生效?
同一个VLAN中的成员可以形成一个广播域,从而实现何种功能?使Switch1的千兆端口允许所有VLAN通过的配置命令如下,请给出空白处的配置内容:Switchl(config)#interfacegigabit0/1(进入千兆端口配置模式)
阅读以下说明,回答问题1~7。[说明]下图是在网络中划分VLAN的连接示意图。VLAN可以不考虑用户的物理位置,而根据功能、应用等因素将用户从逻辑上划分为一个个功能相对独立的工作组,每个用户主机都连接在支持VLAN的交换机端口上,并属于某个VLA
双绞线可以制作成直连线和交叉线两种形式。在上图中,两个交换机的UPLINK口相连,使用的双绞线制作成什么形式?连接交换机和计算机的双绞线制作成什么形式?阅读下面的配置信息,将(1)~(4)处空缺的内容填写在相应位置。SW1>enable
该DHCP服务器可分配的IP地址有多少个?在Windows操作系统下,DHCP客户端“Internet协议(TCP/IP)属性”配置界面如下图所示。在此界面中,客户端应如何配置?
阅读下列说明,回答问题1至问题6。[说明]某公司的业务员甲与客户乙通过Internet交换商业电子邮件(以下简称为“邮件”)。为保障邮件内容的安全,双方约定采用安全电子邮件技术对邮件内容进行加密和数字签名。安全电子邮件技术的实现原理如图4
随机试题
关于汇票记载事项的描述错误的有()。
预防手术后尿潴留,下列错误的是【】
男性,48岁,胃镜活检病理为胃中分化腺癌,腹部增强CT未见肝转移结节,手术探查发现肿瘤已浸润至横结肠,较局限,肝脏未见肿物,幽门下淋巴结肿大。该病人应行
根据《招标投标法》的规定,下列关于从事各招标代理业务机构必须具备的注册资金表述中正确的是()。
下列关于资产的企业所得税税务处理的说法,正确的有()。(2016年回忆版)
伊斯兰教最基本的经典是()。
AtopFederalReserveofficialsaidtheUnitedStatesismovingforwardwithaplantodevelopa"centralbankdigitalcurrency,
对长度为n的线性表进行顺序查找,在最坏情况下所需要的比较次数为
A、 B、 C、 B
A、Wecanbreatheaseasilyasusual.B、Wecancarryonashortconversation.C、Theaerobiccurveoccursattheendoftheexerci
最新回复
(
0
)