當需要建立乙個複雜的物件,並且物件的建造順序穩定時,為了使得建造**和表示**相分離,隱藏物件建造過程,可以使用建造者模式。類圖示意如下:
其中builder類定義了物件建造使用的抽象介面,concretebuilder類定義了不同物件的具體介面,director類呼叫具體物件介面,按照一系列順序建造物件。
**如下(示例):
//14 建造者模式
class personbuilder
;class thinpersionbuilder :public personbuilder
void
createbody
() override
void
createleftarm
() override
void
createrightarm
() override
void
createleftleg
() override
void
createrightleg
() override }
;class fatpersionbuilder :public personbuilder
void
createbody
() override
void
createleftarm
() override
void
createrightarm
() override
void
createleftleg
() override
void
createrightleg
() override }
;class persiondirector
;void
createpersion()
private:
personbuilder *m_ppersonbuilder;
};
暫無。 大話設計模式 建造者模式
1 建造者模式 builder 又叫生成器模式,它是將乙個複雜物件的構建與它的表示分離,使得同樣的構建過程可以建立不同的比奧斯。如果我們用了建造者模式,那麼使用者就只需指定需要建造的型別就可以得到它們,而具體建造的過程和細節就不需知道了。2 建造者模式 builder 結構圖 3 建造者模式主要是用...
大話設計模式 建造者模式
我們在建造的過程是基本穩定的,不需要大變動,只要是人這個類不管是胖瘦,都得有頭身手腳。但是具體的一些細節是不同的,有高矮胖瘦 長腿長胳膊,對於使用者來說他最終要的是結果,你只管建就可以了,在這樣的需求下我們要將這個複雜物件的構建和其表示分離開來,使得同樣的構建過程能創造更多的表示方法,滿足不同使用者...
《大話設計模式》 建造者模式
題目 建造兩個產品,這兩個產品都有兩個部件 abstract class builder public class concretebuilder1 extends builder override public void buildpartb override public product get...