設計模式(c ) 工廠模式

2021-10-10 04:33:18 字數 1357 閱讀 6560

(1)簡單工廠模式

#include

using namespace std;

//基類

class product

;/*純虛函式在基類中,調函式去子類中去調*/

//子類a

class producta : public product

};//子類b

class productb : public product

};//子類c

class productc : public product

};//工廠類

class factory

}void send()

};//客戶端

int main()

(2)工廠模式

#include

using namespace std;

//基類

class product

;/*純虛函式在基類中,調函式去子類中去調*/

//子類a

class producta : public product

};//子類b

class productb : public product

};//子類c

class productc : public product

};//工廠類

class factory

void send()

};//客戶端

//讓客戶端來new,把工廠的建構函式進行了改動

int main()

(3)抽象工廠模式

#include

using namespace std;

//基類

class product

;/*純虛函式在基類中,調函式去子類中去調*/

//子類a

class producta : public product

};//子類b

class productb : public product

};//子類c

class productc : public product

};//工廠類

class factory

;//子類工廠a

class factorya : public factory

void send()

};//子類工廠b

class factoryb : public factory

void send()

};//子類工廠c

class factoryc : public factory

void send()

};//客戶端

int main()

C 設計模式 工廠模式

可以方便的使用繼承來實現建立方法的多樣性,區別於使用靜態方法定義簡單工廠。工廠方法模式 定義了乙個建立物件的介面,但由於子類決定要例項化的類是哪乙個。工廠方法讓類把例項化推遲到了子類。依賴倒置原則 要依賴抽象,不要依賴具體類 以下指導方針將避免你再oo設計中違反依賴倒置原則 盡量達到這個原則,不一定...

C 設計模式 工廠模式

建立型模式,提供了一種建立物件的最佳方式。在工廠模式中,我能在建立物件時不會對客戶端暴露建立邏輯,並且通過使用乙個公用的介面來指向新建立的物件。我們將建立乙個 shape 介面和實現 shape 介面的實體類。下一步是定義工廠類 shapefactory。factorypatterndemo,我們的...

C 設計模式 工廠模式

目錄 基本概念 及例項 工廠方法模式 factory method 定義乙個用於建立物件的介面,讓字類決定例項化哪乙個類。工廠方法使乙個類的例項化延遲到其子類 簡單工廠模式的最大優點在使用者工廠類中包含了必要的邏輯判斷,根據客戶端的選擇條件動態例項化相關的類,對於客戶端來說,去除了具體產品的依賴。工...