C++设计模式从0进击-1-简单(静态)工厂模式
来源:互联网 发布:带着淘宝混异世txt 编辑:程序博客网 时间:2024/06/06 00:14
简单工厂模式的工厂类一般是使用静态方法,通过接收的参数的不同来返回不同的对象实例。
不修改代码的话,是无法扩展的。
#include <iostream>using namespace std;class COperation{public:int m_nFirst;int m_nSecond;virtual double GetResult(){double dResult = 0;return dResult;}};//加法class AddOperation: public COperation{virtual double GetResult(){return m_nFirst+ m_nSecond;}};//减法class SubOperation: public COperation{public:virtual double GetResult(){return m_nFirst - m_nSecond;}};
//工厂类
class CCaculatorFactory{public:static COperation * Create(char cOperator);};COperation * CCaculatorFactory::Create(char cOperator){COperation * oper;switch(cOperator){case '+':oper = new AddOperation();break;case '-':oper = new SubOperation();break;default:oper = new AddOperation();break;}return oper;}
int _tmain(int argc, _TCHAR * argv []){ int a, b; cin >> a >> b; COperation * op = CCaculatorFactory::Create('-'); op->m_nFirst = a; op->m_nSecond = b; cout << op->GetResult() << endl; return 0;}
0 0
- C++设计模式从0进击-1-简单(静态)工厂模式
- C++设计模式从0进击-1-简单(静态)工厂模式
- C++设计模式从0进击-2-抽象工厂模式
- C++设计模式从0进击-3-工厂模式
- 设计模式-Simple Factory 简单工厂模式(静态工厂)
- 设计模式 - 简单工厂模式(C++)
- [设计模式](二):工厂模式(简单工厂|静态工程、工厂方法|多工厂、抽象工厂)
- 设计模式之简单工厂,工厂方法模式(c++)
- 设计模式案例--工厂模式--简单工厂(静态工厂)(simplefactory)
- 静态工厂模式(简单工厂模式)
- 简单工厂模式(静态工厂模式)
- PHP设计模式-工厂系列(一)-简单工厂模式(静态工厂模式)
- PHP设计模式-工厂系列(一)-简单工厂模式(静态工厂模式)
- C++设计模式从0进击-4-建造者模式
- C++设计模式从0进击-5-单例模式
- C++设计模式从0进击-6-原型模式
- Java设计模式-工厂模式(1)简单工厂模式
- C#--简单工厂设计模式
- 隐式动画及 CAlayer position 与 anchorPoint
- 黑马程序员——小时候经常见到的乘法口诀
- 盘点8种CSS实现垂直居中水平居中的绝对定位居中技术
- Sql server2005中如何格式化时间日期
- 最小花费路径 MST+LCA
- C++设计模式从0进击-1-简单(静态)工厂模式
- 一个示例的iptables 脚本
- MySQL-5.6.17免安装版配置方法
- 刘强东:京东因自建物流减少库存周转至32天
- Android listview中再嵌套listview 实现消息评论功能处理
- BestCoder Round #6(1003)hdu4983(欧拉函数)
- 网站的robots 文件写法 附自动生成工具网址
- TCP/IP
- svn相关