(十)原型模式

2022-09-12 15:57:26 字數 702 閱讀 7705

原型模式(prototype),用原型例項指定建立物件的種類,並且通過拷貝這些原型建立新的物件。[dp]

提供icloneable介面,其中唯一的方法clone(),只要實現這個介面就可以完成原型模式。

原型模式其實就是從乙個物件再建立另外乙個可定製的物件,而且不需知道任何建立的細節。

簡單點說就是,實現了乙個clone的介面,來從乙個物件建立另乙個可定製物件。

#include #include using namespace std;

class prototype

string getstate()

virtual void show()

virtual prototype* clone() = 0;

private:

string m_state;

};class prototypea :public prototype

prototype* clone()

};int main()

在實際專案中,有許多struct或者class有拷貝、複製、轉殖的需求,原型模式提供了一種思路。

另外還有 std::copy 函式.

建立型模式 原型模式

使用原型例項指定建立物件的種類,並且通過轉殖這些原型建立新的物件 原理是將乙個原型物件傳給要發動建立的物件,該物件通過請求原型物件轉殖自己來建立過程 轉殖方法 public prototype clone jdk中為我們提供了轉殖的方法clone 從object繼承下來,乙個物件要實現轉殖,需要實現...

建立型模式 原型模式

原型 prototype 模式主要用於建立物件的轉殖,通常其最簡單的形式就是採用自定 clone 函式並 傳入物件引數以返回此物件的乙個副本,這在 python 實作上可使用內定 copy.cop y 或 copy.deepcopy 函式來達到此目的。當已有乙個物件但對此物件的某些部分會被變更卻又想...

原型模式 建立型模式

文章首發個人部落格 如果我們有乙個類 sheep 它裡面有兩個屬性,名稱 name 年齡 age 現在我們有乙個它的例項 s1 我們需要按照這個例項的屬性再去建立兩個物件。1 sheep data public class sheep 2 main public class main 原型模式 用原...