首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
(2013年上半年下午试题五)阅读下列说明和C++代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 现要求实现一个能够自动生成求职简历的程序,简历的基本内容包括求职者的姓名、性别、年龄及工作经历。希望每份简历中的工作经历有所不同
(2013年上半年下午试题五)阅读下列说明和C++代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 现要求实现一个能够自动生成求职简历的程序,简历的基本内容包括求职者的姓名、性别、年龄及工作经历。希望每份简历中的工作经历有所不同
admin
2018-07-27
74
问题
(2013年上半年下午试题五)阅读下列说明和C++代码,将应填入(n)处的字句写在答题纸的对应栏内。
【说明】
现要求实现一个能够自动生成求职简历的程序,简历的基本内容包括求职者的姓名、性别、年龄及工作经历。希望每份简历中的工作经历有所不同,并尽量减少程序中的重复代码。
现采用原型模式(Prototype)来实现上述要求,得到如图10.19所示的类图。
【C++代码】
#include<string>
Using namespace std;
Class Cloneable{
Public:
_____(1);
};
Class WrkExperience:public Cloneable{ //工作经历
Private:
String workDate;
String company;
Public:
Cloneable*Clone(){
_____(2);
Obj->workDate=this->workDate;
Obj->company=this->company;
Return obj;
}
//其余代码省略
};
Class Resume:public Cloneable{//简历
Private:
String name;string sex;string age;
WOrkExperience* work;
Resume(WorkExperience*work){
This->work=_____(3);
}
Public:
Resume(string name){/*实现省略*/ }
Void setPersona1 Info(string sex,string age){ /*实现省略*/ }
Void setworkExperience(string workDate,string company){ /*实现省略*/ }
Cloneable*Clone(){
_____(4);
Obj->name=this->name;
Obj->sex=this->sex;
Obj->age=this->age;
Return obj;
}
};
Int main(){
Resume*a=new Resume(’’张三’’);
A->SetPersonalInfo(’’男’’,’’29’’);
A->setworkExperience(’’1998"~’’2000’’,’’XXX公司’’);
Resume*b= ______(5);
B->setWorkExperience(’’2001"~’’2006’’,’’YYY公司’’);
Return 0;
}
选项
答案
(1)virtual Cloneable*Clone()=0 (2)WorkExperience*obj (3)Work (4)Resume*obj (5)a->Clone()
解析
本题考查原型模式的概念及应用,原型模型是一种对象创建模型,用原型实体指定创建对象的种类,并且通过复制这些原型创建新的对象。原型模型允许一个对象再创建另一个可定制的对象,无须知道任何创建的细节。
原型模式其实就是常说的“虚拟构造函数”的一个实现,C++的实现机制中并不支持这个特性,但是通过不同派生类实现的Clone接口函数,可以完成与“虚拟构造函数”同样的效果。
本题中声明一个虚拟基类,所有的原型都从这个基类继承,空(1)处所代表的就是这个基类中的纯虚函数,需要供继承者自行实现,因此应填入virtual Cloneable*Clone()=0,声明一个抽象基类,并定义Clone()函数为纯虚函数。然后根据基类实例化各个子类,并且实现复制构造函数,并实现clone()函数,由此可知空(2)处应填入WorkExperience*obj,空(3)处应填入Work,空(4)处应填入Resume*obj。在main函数中实现Resume*b对*a的复制,故根据C++语法,空(5)处应填入a->Clone()。
转载请注明原文地址:https://www.kaotiyun.com/show/6zxZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
从图7-1中可以看出采用什么拓扑结构与设计方法?为了进一步简化系统,有人建议把“电脑模块”与“电话模块”合成一个模块,其传输介质共用,这可以实现吗?
阅读以下说明,将应填入(n)处的解答填写在对应栏内。【说明】某网络结构如图5-7所示,如果Router3与网络4之间的线路突然中断,按照RIP路由协议的实现方法,路
将图2-2中(1)和(2)空缺名称填写在对应的解答栏内。ADSL有哪两种IP地址的分配方式?
目前,通过移动电话接入互联网所采用的主要技术是什么?进行一次查询的数据信息见表1-1,网络的基本通信服务费用见表1-2,总费用=网络租用费+通信费。根据表中给出的数据,试计算销售员每月至少应进行多少次查询,才能使得使用移动电话的总费用比使用PDA的总费
下面是某路由器的部分配置信息,解释(n)处标有下划线部分的含义。【配置路由器信息】Currentconfiguration:!version11.3noservicepassword
请用蒙特卡罗错误随机植入模型估算出被测程序模块中将会遗留下多少个未被发现的隐藏错误。请简要列出计算式子及计算过程。信息部门的吴总工程师向谢工程师建议了另一种测试方案作为“错误随机植入”测试方法的补充。即由A和B两组测试人员同时相互独立地测试同一份宽带路
认真阅读下列有关Linux操作系统的Samba配置技术的说明,根据要求回答问题1至问题6。【说明】SMB(ServerMessageBlock,服务消息块)协议主要用于实现Windows和Linux操作系统中计算机之间共享打印机、共享串行接
在安装RedhatLinux9.0操作系统的过程中,如果没有选择安装Web服务器,Apache服务器则需要手动安装。现从http://httpd.apache.org网站上免费下载了一个apache-2.2.3RPM格式的软件包,请将以下(1)空缺处
在安装RedhatLinux9.0操作系统的过程中,如果没有选择安装Web服务器,Apache服务器则需要手动安装。现从http://httpd.apache.org网站上免费下载了一个apache-2.2.3RPM格式的软件包,请将以下(1)空缺处
在图8-12所示的拓扑结构中的代理服务器上依次单击“开始→程序→管理工具→路由与远程访问,并在系统弹出的界面中打开“IP路由选择”目录树,然后用鼠标右键单击“NAT/基本防火墙”,选择[新增接口]命令。接着若选择接口1的“本地连接”,最后进行如图8-13所
随机试题
下列有关TN--C接地系统的,说法正确的是_______。
大肠埃希菌不是条件致病菌。()
A.忧B.怒C.恐D.喜E.思上述各项,属脾之志的是()
根据《中华人民共和国合同法》的有关规定,监理合同是()。
评标委员会为()人以上的单数。
甲公司购买乙公司的产品后,签发了一张银行承兑汇票给乙,该汇票在到期前不慎遗失,要使该汇票作废,乙可以()。
毛泽东在系统论述新民主主义革命的基本经验时归纳的既是中国革命的基本特点,也是战胜敌人的基本武器的是()
设P(B)=0.5,P(A—B)=0.3,则P(A+B)=__________.
Duringrecentyearswehaveheardmuchabout"race":howthisracedoescertainthingsandthatracebelievescertainthingsand
Completethetablebelow.WriteNOMORETHANTHREEWORDSORANUMBERforeachanswer.
最新回复
(
0
)