class builderpattern
}///
/// 生產者類
///public
abstract
class builder
////// 會生產某種產品的員工
///public
class concretebuilder : builder
public
override
void
method1()
public
override
void
method2()
}//呼叫
concretebuilder = new builderpattern.concretebuilder();
假設這裡有一百個過程是不是要寫一百次?
product = concretebuilder.getproduct();
/// /// 管理builder,廠商老闆安排builder員工生產某個產品
///public
class director
}//呼叫
director = new builderpattern.director();
product = director.getproduct();
//然後你可以給director.getproduct();帶引數type type 達到需要什麼型別的產品就生產出什麼型別的產品
/// /// 生產另一種型別的同種產品,比如組裝電腦時不同的cpu 硬碟等
///public
class concretebuilder2 : builder
public
override
void
method1()
public
override
void
method2()
}public
class newdirector
return product;}}
//呼叫
director = new builderpattern.newdirector();
product = director.getproduct("2");
}
設計模式 建造者模式C 實現
將乙個複雜物件的構建和他的表示分離,使得同樣的構建過程可以創造不同的表示 注 在模板方法中,實現了父類呼叫子類方法的功能,且,通過鉤子實現了方法的選擇性呼叫。但是其中整體的順序固定的,先做什麼再做什麼,不用做的通過鉤子遮蔽。而創造者模式就是對這個固定順序進行調整使得其更好工作的乙個模式。角色分工 p...
設計模式的 C 實現 建造者模式
前文回顧 單例模式 一 單例模式 二 觀察者模式 簡單工廠模式 工廠方法模式 一 工廠方法模式 二 抽象工廠模式 一 抽象工廠模式 二 原型模式 外觀模式 中介者模式 模式 裝飾者模式 策略模式 狀態模式 命令模式 建造者模式的本質是乙個物件的構造過程是相對不變的 客戶端只是物件的消費者,不關心物件...
c 建造者模式
建造者模式用來構建複雜物件的設計模式,指揮者用來提供構造方法,建造者用來提供材料,物件建立時只是乙個空架子,也可以用set方法來自定義構造。include include using namespace std class foundation class thatchedfoundation pu...