优化前版本:《大话设计模式》C++实现:01 简单工厂模式
一、代码
1、结果
1.1 main.cpp
#include "Operation.h"
#include "OperationFactory.h"
#include "OperationAdd.h"
#include "OperationSub.h"
#include "OperationMul.h"
#include "OperationDiv.h"
void test()
{
double numA = 200, numB = 100;
cout << "A = " << numA << "\tB = " << numB << endl;
Operation* oper = OperationFactory::instance()->findCreator("OperationAdd");
oper->setNumberA(numA);
oper->setNumberB(numB);
cout << "add result = " << oper->getResult() << endl;
oper = OperationFactory::instance()->findCreator("OperationSub");
oper->setNumberA(numA);
oper->setNumberB(numB);
cout << "sub result = " << oper->getResult() << endl;
oper = OperationFactory::instance()->findCreator("OperationMul");
oper->setNumberA(numA);
oper->setNumberB(numB);
cout << "mul result = " << oper->getResult() <<</

本文通过C++实现简单工厂模式,展示了如何通过工厂类创建不同类型的四则运算操作对象,包括加、减、乘、除。通过注册机制,工厂能够根据请求动态创建相应的操作对象,实现了操作符的灵活扩展。
最低0.47元/天 解锁文章
&spm=1001.2101.3001.5002&articleId=108161743&d=1&t=3&u=9fe33178ca5c4004be3ac90fd945cfda)
1559

被折叠的 条评论
为什么被折叠?



