(十三)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博客

相关推荐
m0_7482336417 小时前
C++ 模板初阶:从函数重载到泛型编程的优雅过渡
java·c++·算法·1024程序员节
Hyt的笔记本17 小时前
【C++】异步操作
c++·1024程序员节
yolo_guo18 小时前
C++ ABI:编译报错之:gcc 4.8.1 切 gcc 6.1.0
c++
路在脚下@18 小时前
C++ 知识体系
c++·1024程序员节
qq_3106585119 小时前
webrtc代码走读(四)-QOS-NACK实现-发送端
c++·webrtc
Hero | 柒19 小时前
设计模式之建造者模式
java·设计模式·1024程序员节
长欢喜一场21 小时前
高精度算法全解析:从原理到实现
c++·1024程序员节
m0_7482336421 小时前
单调栈详解【C/C++】
c语言·c++·算法·1024程序员节
Source.Liu21 小时前
【CMakeLists.txt】QtSvg 头文件包含配置详解
c++·qt·librecad
周杰伦_Jay21 小时前
【常用设计模式全解析】创建型模式(聚焦对象创建机制)、结构型模式(优化类与对象的组合关系)、行为型模式(规范对象间的交互行为)
设计模式·架构·开源·交互·1024程序员节