設計模式 建立型模式 Prototype模式

2021-10-01 17:23:07 字數 648 閱讀 9106

原型模式是用於建立重複的物件,同時又能保證效能

用原型例項指定建立物件的種類,並且通過拷貝這些原型建立新的物件。

如何解決:利用已有的乙個原型物件,快速地生成和原型物件一樣的例項

實際上prototype模式,builder模式,abstractfactory模式都是通過乙個類(物件例項)來專門負責物件的建立工作(工廠物件),而區別是:

原型模式通過拷貝乙個現有物件生成新物件。

淺拷貝實現cloneable,重寫,深拷貝是通過實現serializable讀取二進位製流

缺點:

使用場景:

注意事項:

prototype.hpp

#ifndef _prototype_h_

#define _prototype_h_

#include using namespace std;

class prototype

~prototype(){}

virtual prototype* clone() const=0;

};class concreteprototype:public prototype

concreteprototype(const concreteprototype& cp)

設計模式 建立型模式 原型模式

1 原型模式 prototype模式 是指 用原型例項指定建立物件的種類,並且通過拷貝這些原型,建立新的物件 2 原型模式是一種建立型設計模式,允許乙個物件再建立另外乙個可定製的物件,無需知道如何建立的細節 3 工作原理是 通過將乙個原型物件傳給那個要發動建立的物件,這個要發動建立的物件通過請求原型...

設計模式 建立型模式

建立型模式 與物件的建立有關。1 簡單工廠模式 靜態工廠 簡單工廠關聯具體類,通過簡單工廠來建立具體的類。封裝變化到簡單工廠裡面去。工廠類 具體類 2 工廠模式 抽象工廠 具體工廠 具體類 要是新增新的類,只需要擴充套件就可以了。他們對外的行為是一致的。3 抽象工廠 抽象工廠 具體工廠 具體類 具體...

設計模式 建立型模式

建立型模式 工廠方法 核心 客戶端呼叫具體的工廠,讓工廠去決定例項化哪個具體的類。核心 為工廠類建立對應的具體的類,表現為和對應的具體類的依賴關係。抽象工廠類 inte ce productfactory 具體a工廠 class concreteproductfactorya productfact...