(十三)Head first design patterns原型模式(c++)

原型模式

原型模式就是就是对对象的克隆。有一些私有变量外界难以访问,而原型模式可以做到对原型一比一的复刻。

其关键代码为下面的clone方法。此方法将本对象进行复制传递出去。

cpp 复制代码
class ConcretePrototype1 : public Prototype{
public:
    ConcretePrototype1(string prototype_name, float concrete_prototype_field):Prototype(prototype_name), concrete_prototype_field1(concrete_prototype_field){}
    Prototype* Clone() { return new ConcretePrototype1(*this); }
    void printFeild(){ std::cout << "FEILD:\t" << concrete_prototype_field1 << std::endl; }
private:
    float concrete_prototype_field1;
};

参考

C++设计模式(10)------原型模式_c++原型模式-CSDN博客

相关推荐
北京流年7 分钟前
执行clang --version报错说由于找不到 libgcc_s_seh-1.dll和 找不到 libstdc++-6.dll 这两个文件
开发语言·c++
职业码农NO.129 分钟前
系统架构设计中的 15 个关键取舍
设计模式·架构·系统架构·ddd·架构师·设计规范·领域驱动
fpcc42 分钟前
跟我学C++中级篇—Linux内核中链表分析
linux·c++·链表
燕双嘤43 分钟前
LLM:RAG,设计模式,Agent框架
人工智能·机器学习·设计模式
挖矿大亨1 小时前
C++中的this指针
java·开发语言·c++
阿拉斯攀登1 小时前
设计模式:构建者模式
设计模式·建造者模式·构建者模式
姜糖编程日记1 小时前
C++——初识(2)
开发语言·前端·c++
山沐与山2 小时前
【设计模式】Python工厂模式与依赖注入:FastAPI的Depends到底在干嘛
python·设计模式·fastapi
刺客xs2 小时前
c++多线程 线程池的实现
开发语言·c++
福楠2 小时前
从C到C++ | 内存管理
c语言·c++