一共涉及到三個類:產品類,建造者類,使用者類
優點:將乙個複雜物件的構造和它的表示分離。這樣易於擴充套件。
缺點:如果構建發生變化,所有的建造者都要變化。
class juice
void setvolume(double v)
void setcolor(string color)
private:
double m_volume;
string m_color;
};//建造者抽象類
class maker
void createjuice()
juice* getjuice()
virtual void squeezevolume() = 0;
virtual void mixcolor() = 0;
protected:
juice* p_juice;
};class grapejuicemaker : public maker
void squeezevolume()
void mixcolor()
};public:
void squeezevolume()
void mixcolor()
};//使用者類
class worker
void setmaker(maker* m)
juice* makejuice()
private:
maker* m_maker;
};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的 設計模式 可復用物件導向軟體的基礎 中是這樣說的 將乙個複雜物件的構建與它的表示分離,使得同樣的構建過程可以建立不同的表示。這句話,似懂非懂的。乙個複雜物件的建立,其通常是由很多的子物件構成 如果乙個物件能夠直接就建立好了,那麼也不會稱之為複雜物件。由於專案中需求的變化,這個...