一 簡單工廠模式

2021-06-06 12:35:59 字數 1513 閱讀 5296

#ifndef _operation_h_

#define _operation_h_

class operation

;class operationadd:public operation

;class operationsub:public operation

;class operationmul:public operation

;class operationdiv:public operation

;#endif

#include "operation.h"

#include using namespace std;

operation::operation()

operation::~operation()

double operationadd::getresult()

double operationsub::getresult()

double operationmul::getresult()

double operationdiv::getresult()

operationfactory::~operationfactory()

operation* operationfactory::createoperate(char operate)

{ operation* poperate =null;

switch (operate)

{ case '+':

poperate = new operationadd();

break;

case '-':

poperate = new operationsub();

break;

case '*':

poperate = new operationmul();

break;

case '/':

poperate = new operationdiv();

break;

default:

cout<<"無效的運算子"int main()

{ char operate;

double numa;

double numb;

cout<<"請輸入數字1:";

cin>>numa;

cout<<"請輸入運算子:";

cin>>operate;

cout<<"請輸入數字2:";

cin>>numb;

operationfactory* pope***c=new operationfactory();

operation* poper= pope***c->createoperate(operate);

poper->_numbera = numa;

poper->_numberb = numb;

double result = poper->getresult();

cout<

工廠設計模式一 簡單工廠模式

工廠設計模式實現了建立者和呼叫者的分離。類別 1.簡單工廠模式 2.工廠方法模式 3.抽象工廠模式 遵循的設計原則 1.ocp 開閉原則,open closed principle 乙個軟體的實體應當那個對擴充套件開放,對修改關閉 2.dip 依賴倒置原則,dependence inversion ...

工廠設計模式(一) 簡單工廠模式

工廠設計模式可分為 簡單工廠模式 工廠方法模式 抽象工廠模式 第一篇我們來聊聊 理解 假設某些例項具有相同的方法,可以根據引數的不同返回不同的例項,被建立的例項通常都具有共同的父類,那麼可以考慮使用簡單設計模式來實現。例如可以實用簡單工廠模式設計乙個可以建立不同幾何形狀 如圓形 方形和三角形等 的繪...

設計模式 一 工廠模式 簡單工廠

以前總覺得設計模式純屬扯淡,浪費精力,10 能搞定的事情非要寫那麼多的介面或者實現類.為什麼要用設計模式,開發有乙個重要的原則 對修改關閉,對擴充套件開放.因為如果把 全部都雜糅到乙個類中,第一 復用性太差,擴充套件性不強.第二,修改起來一改巨改,改動即意味著要增加測試人員工作量,且引入修改bug如...