大话设计模式一:代码无错就是优----简单工厂模式
来源:互联网 发布:网络的弊端 编辑:程序博客网 时间:2024/05/13 13:06
/***计算机控制台程序**要求体现面向对象的思想*/#include <iostream>#include <string>using namespace std;//运算类(基类 抽象类)class Operation{public:Operation(double _numberA = 0.0, double _numberB = 0.0):numberA(_numberA), numberB(_numberB){}void SetNumberA(double _numberA){numberA = _numberA;}void SetNumberB(double _numberB){numberB = _numberB;}virtual double GetResult() = 0;protected:double numberA;double numberB;};//加减乘除类(派生类)//加class OperationAdd : public Operation{public:double GetResult();private:double result = 0.0;};double OperationAdd::GetResult(){result = numberA + numberB;return result;}//减class OperationSub : public Operation{public:double GetResult();private:double result = 0.0;};doubleOperationSub::GetResult(){result = numberA - numberB;return result;}//乘class OperationMul : public Operation{public:double GetResult();private:double result = 0.0;};doubleOperationMul::GetResult(){result = numberA * numberB;return result;}//除class OperationDiv : public Operation{public:double GetResult();private:double result = 0.0;};doubleOperationDiv::GetResult(){if (numberB == 0)throw;result = numberA / numberB;return result;}//运算工厂函数Operation* createOperate(char operate){Operation *oper = NULL;switch (operate){case '+':oper = new OperationAdd;break;case '-':oper = new OperationSub;break;case '*':oper = new OperationMul;break;case '/':oper = new OperationDiv;break;}return oper;}int main(){double numberA, numberB, result;char c;cout << "numberA = ";cin >> numberA;cout << " numberB = ";cin >> numberB;cout << endl;cout << "what do you want to do? ";cin >> c;Operation* oper = createOperate(c);oper->SetNumberA(numberA);oper->SetNumberB(numberB);result = oper->GetResult();cout << " result is:" << result << endl;}
0 0
- 大话设计模式一:代码无错就是优----简单工厂模式
- 《大话设计模式》之--第1章 代码无错就是优?----简单工厂模式
- 《大话设计模式》学习第一章——代码无错就是优?简单工厂模式
- 大话设计模式-第1章代码无错就是优?-简单的工厂模式
- 《大话设计模式》之--第1章 代码无错就是优?----简单工厂模式
- 大话设计模式 第1章 代码无错就是优? 简单工厂模式
- 大话设计模式-第01章 代码无错就是优?——简单工厂模式
- 代码无错就是优?----简单工厂模式
- 大话设计模式——第1章 代码无错就是优?——简单工厂模式
- 《大话设计模式》——读后感 (1)代码无错就是优?——简单工厂模式
- 《大话设计模式》——读后感 (1)代码无错就是优?——简单工厂模式
- 大话模式学习笔记-代码无错就是优?-简单工厂模式
- 读《大话设计模式》:代码无错就是优?
- 代码无错就是忧? 简单工厂模式
- 第一章 代码无错就是优?简单工厂模式(读书笔记)
- 第一章 代码无错就是优?--简单工厂模式(读书笔记)
- 代码无错就是优?——简单工厂模式
- 大话设计模式(一 面试受挫——代码无错就是好?)
- ocp-59
- 连续子串最大最小异或值 Trie+Xor LightOJ 1269 Consecutive Sum
- ocp-60
- ocp-61
- 欢迎使用CSDN-markdown编辑器
- 大话设计模式一:代码无错就是优----简单工厂模式
- Comparable与Comparator的区别
- ocp-62
- linux下core dump的妙用
- 安卓控件使用系列19:日期对话框和时间对话框的使用
- ocp-57
- 利用Fiddler和Wireshark解密SSL加密流量
- ocp-63
- fedora中安装Courier New字体