小菜第一版代码
//第九章原型模式
//V1版本
#include<string>
#include<iostream>
using namespace std;
class Resume {
private:
string name;
string sex;
string age;
string timeArea;
string company;
public:
Resume(string name) {
this->name = name;
}
//设置个人信息
void SetPersonalInfo(string sex, string age) {
this->sex = sex;
this->age = age;
}
//设置工作经历
void SetWorkExperience(string timeArea, string company) {
this->timeArea = timeArea;
this->company = company;
}
void Display() {
cout << name << "," << sex << "," << age << endl;
cout << "工作经历" << timeArea << "," << company << endl;
}
};
//客户端代码
int main() {
Resume a{ "大鸟" };
a.SetPersonalInfo("男","29");
a.SetWorkExperience("1998-2000", "xx公司");
Resume b{ "大鸟" };
b.SetPersonalInfo("男", "29");
b.SetWorkExperience("1998-2000", "xx公司");
Resume c{ "大鸟" };
c.SetPersonalInfo("男", "29");
c.SetWorkExperience("1998-20
原型模式详解:从V1到V3版本的简历类实现

本文对比了三种版本的原型模式代码,从基础的V1版到V2的显式复制构造函数和移动构造函数,再到V3的引用计数管理。通过实例展示了如何使用原型模式创建可克隆的对象并修改其属性。
最低0.47元/天 解锁文章
558

被折叠的 条评论
为什么被折叠?



