面向对象程序设计第六次作业(初步)

Github地址点这里

一开始根本没有头绪,在针对性的看了一些MFC做简易计算器的视频之后照着做了一个雏形。。目前还只能在界面上用鼠标点击操作,还没有加入键盘的输入,也还不能读写文件,也不能报错。。。只是最最基础计算器= =以后还会慢慢完善的。

代码

void CCalculatorDlg::OnBnClickedButton9()
{	//等号的函数,主要就是原先main函数的部分
	UpdateData(TRUE);
	Scan scan;
	Calculation calculation;
	queue<string>queue;
	string str((LPCSTR)CStringA(expression));
	queue = scan.ToStringQueue(str);
	double answer;
	answer = calculation.ToCalculate(queue);
	strstream ss;
	string temp;
	ss << answer;
	ss >> temp;
	m_result = CString(temp.c_str());
	UpdateData(FALSE);
}



void CCalculatorDlg::OnBnClickedButton13()
{	//数字的部分,其余类似
	expression += _T("1");
	UpdateData(FALSE);
}

void CCalculatorDlg::OnBnClickedButton20()
{	//退格键
	expression = expression.Left(expression.GetAllocLength() - 1);
	UpdateData(FALSE);
}

界面

原文地址:https://www.cnblogs.com/Wjianting/p/5564565.html