您当前的位置: 首页 > 

phymat.nico

暂无认证

  • 1浏览

    0关注

    1967博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

设计模式-创建型-原型

phymat.nico 发布时间:2017-10-07 15:41:40 ,浏览量:1

#pragma once

#include 
#include 
#include 
using namespace std;

class cloneable
{
public:
	virtual cloneable* clone() = 0;
};

class work_experience:public cloneable
{
public:
	cloneable* clone()
	{
		work_experience *obj = new work_experience;
		obj->work_date = this->work_date;
		obj->company = this->company;
		return obj;
	}
private:
	string work_date;
	string company;
};

class resume:public cloneable
{
public:
	void set_personal_info(string name, string age, string sex,string phone)
	{
		name_ = name;
		age_ = age;
		sex_ = sex;
		phone_ = phone;
	}
	void set_work_experience(string date,string company)
	{
		work_exp_list_.push_back(make_pair(date,company));
	}
	cloneable* clone()
	{
		resume *obj = new resume;
		obj->name_ = this->name_;
		obj->age_ = this->age_;
		obj->sex_ = this->sex_;
		obj->phone_ = this->phone_;
		obj->work_exp_list_ = this->work_exp_list_;
		return obj;
	}
	void print()
	{
		cout            
关注
打赏
1659628745
查看更多评论
0.0445s