C++ 简单工厂模式示例:实现加减运算
#include
class OperationPlus : public OperationCls { public: int GetResult(){ return NumberA + NumberB;
}
}; class OperationSub : public OperationCls{ public: int GetResult(){ return NumberA - NumberB; }
};
class FactoryOperate{
public:
OperationCls * CreateOperate(int type){
switch (type) {
case 1:
return new OperationPlus;
break;
case 2:
return new OperationSub;
break;
default:
break;
}
}
};
int main(){
FactoryOperate *factory = new FactoryOperate();
std::cout<
}
哪里有错内容:在FactoryOperate类的CreateOperate函数中,switch语句的括号应该是(type),而不是type。修改后的代码如下:
class FactoryOperate{
public:
OperationCls * CreateOperate(int type){
switch (type) {
case 1:
return new OperationPlus;
break;
case 2:
return new OperationSub;
break;
default:
break;
}
}
};
原文地址: https://www.cveoy.top/t/topic/qwwN 著作权归作者所有。请勿转载和采集!