建造者模式

                 建造者模式能夠將一個產品的內部表象與產品的生成過程分割開來,從而可使一個建造過程生成具備不一樣的內部表象的產品對象。和工廠模式相比,就是我連生產線都提供給你了,還明確了生產的工序。ios

                 一個是以工廠爲中心,一個是以產品爲中心。ui

                下圖是簡單的描述圖spa

               

 #ifndef PRODUCT_Hcode

#define PRODUCT_H
 
#include "builder.h"
 
class Product
{
public:
 Product(Builder *p_b);
 ~Product(){delete p;}
 void Constructor();
private:
 Builder *p;
};
 
#endif // PRODUCT_H
 

#include "product.h"對象

 
Product::Product(Builder *p_b)
{
 p = p_b;
}
void Product::Constructor()
{
 p->builder_a();
 p->builder_b();
}
 

 

#include <iostream>產品

 
using namespace std;
 
#include "fristbuilder.h"
#include "product.h"
 
int main()
{
 Product p(new FristBuilder);
 p.Constructor();
 return 0;
}
相關文章
相關標籤/搜索
本站公眾號
   歡迎關注本站公眾號,獲取更多信息