C 設計模式 建造者模式

2022-09-21 23:48:15 字數 1021 閱讀 9466

建造者模式:將乙個複雜物件的構建過程與它的構建細節分離,使得同樣的構建過程可以執行不同的表示。

優點: 使得建造**與表示**分離,由於建設者隱藏了該產品是如何組裝的,所以若需要改變乙個產品的內部表示,只需要定義乙個具體的建造者就可以了

#include#include

#include

#include

using

namespace

std;

//product class,產品類,由多個部件組成。

class

product

//顯示所有的產品部件

void

show()

);cout

<

}};//

builder,抽象建造者,並宣告乙個得到產品建造後結果的方法getresult。

class

builder;//

concretebuilder1,具體建造者類,實現builder介面中的具體方法。

class concretebuilder1 :public

builder

void buildpartb()override

product* getresult()override

};//

concretebuilder2,具體建造者類,實現builder介面中的具體方法。

class concretebuilder2 :public

builder

void buildpartb()override

product* getresult()override

};class director //

指揮者類,指揮建造product的過程(控制構建各部分元件的順序)。

};int

main()

參考——大話設計模式

參考——

C 設計模式 建造者模式

本文固定連線 using system using system.collections.generic using system.linq using system.text using system.threading.tasks public void show 抽象建造者類,確定產品有兩個部...

C 設計模式 建造者模式

ifndef builder h define builder h include 說明 乙個複雜物件的建立,其通常是由很多的子物件構成 建造者模式就提供了一種 封裝機制 來將各個物件的變化隔離開,最終,組合成複雜物件的過程是不會變的。定義 建造者模式 將乙個複雜的物件的構建與它的表示分離,使得同樣...

C 設計模式 建造者模式

建造者模式 在gof的 設計模式 可復用物件導向軟體的基礎 中是這樣說的 將乙個複雜物件的構建與它的表示分離,使得同樣的構建過程可以建立不同的表示。這句話,似懂非懂的。乙個複雜物件的建立,其通常是由很多的子物件構成 如果乙個物件能夠直接就建立好了,那麼也不會稱之為複雜物件。由於專案中需求的變化,這個...