設計模式 抽象工廠方法 c 詳解版

2021-09-21 06:58:27 字數 1161 閱讀 1220

目錄

什麼是抽象工廠方法?

**實現?

抽象工廠方法的特點?

answer:抽象工廠模式是圍繞乙個超級工廠來建立其他工廠,該超級工廠又稱為其他工廠的工廠。這種型別的建立模式屬於建立型模式,它提供了一種建立物件的最佳方式。在抽象工廠模式中,介面是乙個負責建立相關物件的工廠,不需要顯示指定它們的類,每個生成的工廠都能夠按照工廠模式來提供物件。

參見:

// 鍵盤

class keyboard

;// 微軟的鍵盤

class keyboardmicro : public keyboard

};// 聯想的鍵盤

class keyboardlenovo : public keyboard

};// 滑鼠

class mouse

;//微軟的滑鼠

class mousemicro : public mouse

};//聯想的滑鼠

class mouselenovo : public mouse

};// 工廠

class factory

;// 微軟的工廠

class factorymicro : public factory

mouse * createmouse() };

// 聯想的工廠

class factorylenovo : public factory

mouse * createmouse()

};

測試用例

#include #include "abstractfactorymodel.h"

using namespace std;

int main()

乙個具體的工廠建立乙個產品族,乙個產品族是不同系列產品的組合,產品的建立邏輯分在每個具體的工廠類種。所有的具體工廠繼承於乙個抽象工廠。

客戶端建立不同產品族的工廠,產品族工廠建立具體的產品對客戶端來說是不可見的。

增加新的產品族時,需要增加具體的工廠類,符合ocp原則。

增加新的產品時,需要修改具體的工廠類和增加產品類,不符合ocp原則。

如果沒有使用多系列產品的需求,則沒有使用抽象工廠模式的必要。

設計模式 工廠方法 c 詳解版

目錄 什麼是工廠方法?怎樣實現工廠方法?工廠方法使用例項 計算器 工廠方法vs簡單工廠模式 answer 是一種實現了工廠概念的物件導向的設計模式,是處理在不指定物件具有具體型別的情況下建立物件的問題。工廠方法是簡單工廠方法的進一步抽象和推廣。由於使用了程式語言的多型性,工廠方法保持了簡單工廠模式的...

C 設計模式 工廠方法模式 抽象工廠模式

抽象工廠模式主要有四個關鍵元素 優點 缺點 產品與工廠對應,所以增加乙個產品必須對應的增加乙個工廠。工廠模式說明見最後擴充套件 抽象產品 ifndef product h define product h class product virtual void init 0 virtual int n...

設計模式 簡單工廠 工廠方法 抽象工廠方法模式

簡介 工廠方法模式分為 簡單工廠模式 工廠方法模式 抽象工廠方法模式 簡單工廠模式是屬於建立型模式,又叫做靜態工廠方法 static factory method 模式,但不屬於23種gof設計模式之一。簡單工廠模式是由乙個工廠物件決定建立出哪一種產品類的實 uml圖示例 public class ...