代码拉取完成,页面将自动刷新
//计算器处理:将Request对象处理为Response对象
#pragma once
#include <iostream>
#include "CustomProtocol.hpp"//提供自定义协议
class Calculator
{
public:
std::shared_ptr<Response> Calculate(std::shared_ptr<Request> req)
{
//std::shared_ptr<Response> res;//返回值
std::shared_ptr<Response> res = Factory::BuildResponse(); // 初始化智能指针
int x=req->GetX();
int y=req->GetY();
char op=req->Getoperator();
switch(op)
{
case '+':
res->SetResult(x+y);
res->SetCode(0);
res->SetDescribe("success");
break;
case '-':
res->SetResult(x-y);
res->SetCode(0);
res->SetDescribe("success");
break;
case '*':
res->SetResult(x*y);
res->SetCode(0);
res->SetDescribe("success");
break;
case '/':
if(y!=0)
{
res->SetResult(x/y);
res->SetCode(0);
res->SetDescribe("success");
}
else
{
res->SetCode(1);//除0操作
res->SetDescribe("div 0");
}
break;
default:
res->SetCode(2);//非法操作
res->SetDescribe("illegal operator");
}
return res;
}
};
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。