《游戲編程模式》筆記——原型模式
什么是原型模式
原型模式是一種創(chuàng)建型模式。
當(dāng)我們需要一個(gè)復(fù)雜對(duì)象的時(shí)候,不自己從頭創(chuàng)建這個(gè)對(duì)象,而是獲得現(xiàn)有的原型的拷貝。
Unity中實(shí)例化一個(gè)預(yù)制體的時(shí)候就是原型模式的一種應(yīng)用。
代碼實(shí)現(xiàn)
C#中?Object?類擁有?MemberwiseClone?函數(shù),通過調(diào)用這個(gè)函數(shù)可以獲得對(duì)象的淺拷貝。
如果需要深拷貝或者其他需求,可以讓類實(shí)現(xiàn)?ICloneable?接口的?Clone?函數(shù),先使用MemberwiseClone?函數(shù)進(jìn)行淺拷貝,再對(duì)拷貝后的對(duì)象進(jìn)行深度定制。
標(biāo)簽: