c 設計模式之原型模式

2021-07-16 05:49:08 字數 884 閱讀 5976

原型模式prototype pattern

定義:原型模式一種物件建立型模式,她採用複製物件原型的方法來建立物件的例項。使用原型模式建立的例項,具有與原型一樣的資料。

注意:

1)由原型物件自身建立目標物件。也就是說,物件建立這一動作發自原型物件本身。

2)目標物件是原型物件的乙個轉殖。也就說,通過原型模式建立的物件,不僅僅與原型物件具體相同的結構,還有原型物件具有相同的值。

3)根據物件轉殖深度層次的不同,有淺轉殖有深轉殖。

原型模式的類結構圖:

兌現**:

#include #include using namespace std;

class person

;class cprogrammer:public person

cprogrammer(string name,int age)

cprogrammer(const cprogrammer &rns)

void print()

{ cout<

person *pn = cp->clone();

pn->print();

cp =new cprogrammer;

cp->print();

pn=cp->clone();

pn->print();

cout<

C 設計模式 之 原型模式

別名 轉殖模式 prototype 用原型例項指定建立物件的種類,並且通過拷貝這些原型建立新的物件。在程式設計中,經常面臨著 某些結構複雜的物件 的建立工作 由於需求的變化,這些物件經常面臨著劇烈的變化,但是它們卻擁有比較穩定一致的介面。問題來了 如何建立易變類的實體物件?解決方案 採用 原型轉殖 ...

C 設計模式之原型模式

原型模式 使用原型例項指定待建立物件的型別,並且通過複製這個原型來建立新的物件。分析 孫悟空 根據自己的形狀複製 轉殖 出多個身外身 軟體開發 通過複製乙個原型物件得到多個與原型物件一模一樣的新物件 工作原理 將乙個原型物件傳給要發動建立的物件 即客戶端對象 這個要發動建立的物件通過請求原型物件複製...

設計模式之原型模式

原型模式其實就是從乙個物件再建立乙個可定製的物件,而且不需要知道建立的細節。具體就是說通過複製或者轉殖乙個原型物件產生新的物件 轉殖物件 分為兩種 深複製或者淺複製,這兩種的主要區別是 在原型中如果有物件的引用,淺複製是將引用複製過來了,也就是淺複製和原型中的物件的引用相同,而深複製是將轉殖物件中引...