用原型指定建立物件的種類,並且通過拷貝這些原型建立新的物件
其關鍵點在於clone函式,呼叫clone函式來建立更多相同型別的物件
#include
#include
using
namespace std;
//父類 resume:簡歷
class
resume
virtual
~resume()
virtual resume*
clone()
//關鍵函式
virtual
void
set(
char
*n)virtual
void
show()
};class
resumea
:public resume
resumea
(char
*str)
;//建構函式
resumea
(const resumea &r)
;//拷貝建構函式
~resumea()
;//析構函式
resumea*
clone()
;//轉殖,關鍵所在
void
show()
;//顯示內容
};
resumea::
resumea
(char
*str)
else
//切記要深拷貝,不要淺拷貝
//淺拷貝**如下
//name = str;
} resumea::
~resumea()
resumea::
resumea
(const resumea &r)
resumea* resumea::
clone()
else//切記要深拷貝,不要淺拷貝
return m_sum;
*/}void resumea::
show()
intmain()
建立型模式 原型模式
使用原型例項指定建立物件的種類,並且通過轉殖這些原型建立新的物件 原理是將乙個原型物件傳給要發動建立的物件,該物件通過請求原型物件轉殖自己來建立過程 轉殖方法 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 原型模式 用原...