设计一个计算器,输入一个字符串存储的数学表达式,可以计算包括"(",")", “+”, "-"四种符号的数学表达式,输入的数学表达式字符串保证是合法的。输入的数学表达式中可能存在空格字符。
#include<string>
#include<stack>
using namespace std;
void compute(std::stack<int>& number_stack, std::stack<char>& operation_stack)
{
if (number_stack.size() < 2)
{
return;
}
int num2 = number_stack.top();
number_stack.pop();
int num1 = number_stack.top();
number_stack.pop();
if (operation_stack.top()=='+')
{
number_stack.push(num1 + num2);
}