软件设计师案例分析当天每日一练试题地址:www.cnitpm.com/exam/ExamDayAL.aspx?t1=4
往期软件设计师每日一练试题汇总:www.cnitpm.com/class/27/e4_1.html
软件设计师案例分析每日一练试题(2024/7/19)在线测试:www.cnitpm.com/exam/ExamDayAL.aspx?t1=4&day=2024/7/19
点击查看:更多软件设计师习题与指导
软件设计师案例分析每日一练试题内容(2024/7/19)
阅读下列说明和C++代码,将应填入(n)处的字句写在答题纸的对应栏内。
【说明】
现要求实现一个能够自动生成求职简历的程序,简历的基本内容包括求职者的姓名、性别、年龄及工作经历。希望每份简历中的工作经历有所不同,并尽量减少程序中的重复代码。
现采用原型模式(Prototype)来实现上述要求,得到如图5-1所示的类图。

【C++代码】
#include
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;
}
信管网试题答案与解析:www.cnitpm.com/exam/ExamDayAL.aspx?t1=4&day=2024/7/19
信管网考友试题答案分享:
信管网qcfnihao:
(1) cloneable *clone(){}
(2)workexperience* obj = new workexperience();
(3)work
(4) resume* obj = new resume();
(5) a->clone()
信管网试题答案与解析:
www.cnitpm.com/exam/ExamDayAL.aspx?t1=4&day=2024/7/19