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

相关推荐
Lucis__20 分钟前
STL设计模式探秘:容器适配器&仿函数
c++·容器·stl·仿函数
无敌最俊朗@44 分钟前
C++ 对象布局之padding(填充字节)
开发语言·c++
小龙报1 小时前
《DevC++支持C++11等与其软件分辨率低的解决办法》
c语言·c++·windows·蓝桥杯·pat考试·学习方法·dvc++
大佬,救命!!!1 小时前
C++函数式策略模式中配置修改
c++·学习笔记·迭代加深·企业级·函数式策略模式·多文件编译环境·json环境配置修改
Chiang木1 小时前
C++进阶:coroutine 协程
开发语言·c++·协程
蕓晨1 小时前
数据结构 图 的邻接表建立
数据结构·c++
渡我白衣1 小时前
深入 Linux 内核启动:从按下电源到用户登录的全景解剖
java·linux·运维·服务器·开发语言·c++·人工智能
byte轻骑兵2 小时前
Rust赋能Android蓝牙协议栈:从C++到安全高效的重构之路
android·c++·rust
龙泉寺天下行走4 小时前
MinGW-w64 工具链(GCC 编译器) 的不同构建版本的区别
c++
代码AC不AC4 小时前
【C++】异常
c++·学习·异常