C++ Qt科学计算器的实现的若干问题

本文介绍了使用C++和Qt实现科学计算器时遇到的问题,包括状态标记bool类型的运用、变量作用域设计,以及核心算法——将中缀表达式转换为后缀表达式及后缀表达式的计算。详细阐述了转换和计算过程中的关键点,如处理括号、优先级、特殊字符%,并提供了实现思路。
摘要由CSDN通过智能技术生成

C++ Qt计算器的实现的若干问题

原创,转载请注明出处。

1)bool类型用来标记状态,比如是否等待一个操作数,用waitForOperator来表示,它表示当前显示状态,如果为真,就让屏幕清零并显示你点击的数,如果为假就在屏幕显示内容的基础上继续显示你刚刚点击的按键。这很重要!开始将其置为true。在按数字键之后变为false,在按clear或者clear all 以及其他某些功能键之后变为true。具体代码参见上一篇文章。

关于bool类型标记状态 这一点,很多情况下都用得到,而且如果设计得当,会大大简化代码并且带来很好的效果,希望读者能够经过很多案例之后得到深刻的体会!

2)全局变量与局部变量的设计。在编写代码的时候,应该合理设计变量的作用范围。

3)该代码中计算部分的核心算法是将我们常见的中缀表达式转化为后缀表达式,以及后缀表达式的计算

QString MainWindow::inToPost(QString infix) throw(const 
  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值