設計模式學習 五 原型模式

2021-06-29 13:20:10 字數 699 閱讀 8190

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

prototype原型模式是一種建立型設計模式,prototype模式允許乙個物件再建立另外乙個可定製的物件,根本無需知道任何如何建立的細節,工作原理是:通過將乙個原型物件傳給那個要發動建立的物件,這個要發動建立的物件通過請求原型物件拷貝它們自己來實施建立。

**

#include 

#include

using namespace std;

class prototype;

class resumea:public prototype

resumea(resumea& o)

void show()

private:

string name;

};class resumeb:public prototype

resumeb(resumeb& o)

void show()

private:

string name;

string school;

};

使用方法

int main()
結果

smith

smith

tom tsing

tom tsing

設計模式五 原型模式

建立型模式最後一種 原型模式 一般用於框架 或者稱為轉殖模式 使用場景 當物件建立比較繁瑣 耗時 或者有訪問許可權的時候 可以使用原型模式 以某個物件為原型 複製出新的物件 不同於new 實現 實現cloneable 介面和重寫clone方法 記憶體賦值 public class sheep imp...

設計模式(五) 原型模式

用原型例項指定建立物件的種類,並且通過拷貝這些原型建立新的物件。通俗來說,原型模式就是從乙個物件,通過複製的手段去建立另外乙個物件,而且不需要知道任何建立的細節。思考 這麼做有什麼好處?角色說明 抽象原型類。宣告乙個轉殖自身的介面 抽象方法 具體原型類。實現乙個轉殖自身的方法 讓乙個原型轉殖自身從而...

PHP設計模式系列(五) 原型模式

原型物件,用原型例項指定建立物件的種類,並且通過拷貝這些原型建立新的物件。原型模式就是clone就是記憶體拷貝,比new的好處是建立物件快速,適合大物件建立。原型模式與工廠模式作用類似,都是用來建立物件 與工廠模式的實現不同,原型模式是先建立好乙個原型物件,然後通過clone原型物件來建立新的物件,...