首页
登录
从业资格
现要求实现一个能够自动生成求职简历的程序,简历的基本内容包括求职者的姓名、性别、
现要求实现一个能够自动生成求职简历的程序,简历的基本内容包括求职者的姓名、性别、
admin
2022-08-02
62
问题
现要求实现一个能够自动生成求职简历的程序,简历的基本内容包括求职者的姓名、性别、年龄及工作经历。希望每份简历中的工作经历有所不同,并尽量减少程序中的重复代码。现采用原型模式(Prototype)来实现上述要求,得到如图5-1所示的类图。
图5-1类图【C++代码】#include<string>using namespace std;class?Cloneable{public:(1);};class?workExperience:public?Cloneable{//工作经历private:string?workData;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 SetPersonInfo(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->SetPersonInfo(“男”,“29”);a->SetWorkExperience(“1998-2000”,“XXX公司”);Resume*b=(5);b->SetWorkExperience(“2001-2006”,“YYY公司”);return 0;}
选项
答案
解析
(1)virtual Cloneable*Clone()=0
(2)WorkExperience*obj=new WorkExperience()
(3)(WorkExperience*)work->Clone()
(4)Resume*obj=new Resume(this->work)
(6)(Resume*)a->Clone()
本题考查原型模型的概念及应用。
原型模型的主要思想:先借用已有系统作为原型模型,通过“样品”不断改进,使得最后的产品就是用户所需要的。原型模型通过向用户提供原型获取用户的反馈,使开发出的软件能够真正反映用户的需求。同时,原型模型采用逐步求精的方法完善原型,使得原型能够“快速”开发,避免了像瀑布模型一样在冗长的开发过程中难以对用户的反馈作出快速的响应。相对瀑布模型而言,原型模型更符合人们开发软件的习惯,使目前较流行的一种实用软件生存期模型。
Prototype模式其实就是常说的“虚拟构造函数”一个实现,C++的实现机制中并没有支持这个特性,但是通过不同派生类实现的Clone接口函数可以完成与“虚拟构造函数”同样的效果。
题中声明一个虚拟基类,所有的原型都是从这个基类继承,(1)所代表的就是这个基类中的纯虚函数,需要供继承者自行实现,即为virtual Cloneable*Clone()=0,(1)声明一个抽象基类,并定义clone()函数为纯虚函数。然后根据基类实例化各个子类,并且实现赋复制构造函数,并实现clone()函数,由此可知(2)处为WorkExperience*Obj,(3)处为Work,(4)处为Resume*Obj。在main函数中实现Resume*b对*a的复制,故根据C++语法(5)中为a->Clone()。
注:解析部分只是给出思路,没有遵循相关语法。
转载请注明原文地址:https://tihaiku.com/congyezige/2410310.html
本试题收录于:
中级 软件设计师题库软件水平考试初中高级分类
中级 软件设计师
软件水平考试初中高级
相关试题推荐
某软件公司举行程序设计竞赛,软件设计师甲、乙针对同一问题、按照规定的技术标准、采
成本分类是指根据成本核算和成本管理的不同要求,将成本分成不同的类别。其中,项目团
结构化开发中,数据流图是__()__阶段产生的成果。A.总体设计 B.程序编
现代企业对信息处理不仅要求及时,而且要准确反映实际情况。所以,信息准确性还包括的
以下关于数据库事务的叙述中,正确的是()。A.一个数据库应用程序只能包含一个
在程序编译过程中,执行类型分析和检查是在()阶段。A.词法分析 B.语法分
下列故障中属于事务内部故障的是( )。A.程序中ROLLBACK语句 B.违
给定关系模式如下,学生(学号,姓名,专业),课程(课程号,课程名称),选课(学号
计算机执行程序时,CPU中( )的内容是一条指令的地址。A.运算器 B.控制
假设员工关系EMP(员工号,姓名,性别,部门,部门电话,部门负责人,家庭住址,家
随机试题
Alittleboyinvitedhismothertoattendhisschool’sfirstteacher-parentm
Foranyonewhoissetonacareerinfashionitisnotenoughtohavesuccee
There’saschooloflinguisticsthatbelieveslanguagelearningbeginswitha
以用户体验安全、舒适、便捷为目标,强化工程及配套服务设施的人性化设计,体现地域和
在绘制零件草图时,画出全部尺寸界线后需完成()。A.画剖面线 B.画各视图轴线
A.410.50 B.410.65 C.410.80 D.410.95
为有效防止框架结构超大体积混凝土基础浇筑时出现有害裂缝,一般不采用的施工方式是(
信息系统主管和审计主管也同意维护库存数据系统的完整性对于把正确的产品数量发给商店
急进性肾炎主要有哪些分型?
从所给的四个选项中,选择最合适的一个填入问号处,使之呈现一定的规律性:
最新回复
(
0
)