设计模式原型模式

Posted lampsasarum

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了设计模式原型模式相关的知识,希望对你有一定的参考价值。

原型模式

原型模式,用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。

说白点就是,使用原型模式可以很便捷的创建一个原型出来,之后再拷贝它,并可以对拷贝出来的东西进行修改。

技术图片

技术图片

原型模式原本的意思是,先构造原型,再拷贝(也就是不用构造),从而说原型模式提高了效率。

但写完代码后发现,如果要实现深拷贝,也就是所有的指针、引用的部分都需要使用new才能完成。new也就是构造对象,当然这个构造对象只是构造整个对象里的指针、引用部分,所以我认为效率的提高程度依赖于类里引用类型的数目。


讲真的,或许这个模式并不适合C++,因为C++里面有个拷贝构造,可以直接拷贝。并且再Java和C#语言中都用对应的类似于ICloneable接口。

技术图片

注:我也不知道这个模式使用的频率多不多,如果使用Java或C#,我觉得我可能需要重新学习一下,但原理再上述讲清了。

以上是关于设计模式原型模式的主要内容,如果未能解决你的问题,请参考以下文章

原型模式

原型模式--你会用么?

设计模式:原型模式

原型模式

原型模式(Prototype Pattern)

设计模式之-创建模式-原型模式