手把手-QT-计算器

环境VS2008+QT4.86

1. 新建项目

手把手-QT-计算器_第1张图片


2. 选择一些选项,classname 自动生成的,随便用什么名字。

手把手-QT-计算器_第2张图片

3. 在类中添加如下变量 

手把手-QT-计算器_第3张图片

功能是:结果显示,输入显示,24个按键,组合按键(用于signals方便用一个slot实现),计算字符串输入(中缀表达),计算字符串结果(后缀表达),最后的结果


4. 添加slot函数


计算结果的按键,回退按键,多按键分工处理。


5. 添加计算函数

手把手-QT-计算器_第4张图片

分别用于初始化界面,读取不同运算优先级,读取字符串中的一个数到字符串,逆波兰式转化,获取字符串一个数,计算逆波兰式结果。

针对函数与变量,在对应的.cpp文件添加函数。


6. 计算原理

逆波兰式计算,转换为后缀表达式后,直接从头到尾,遇到数字push,遇到符号把stack前两个或一个数读出,然后process,计算结果后push,这样

直到后缀表达式结束,然后返回stack的top就是需要计算的结果。


本人代码:

https://github.com/colin-zhou/Calculator

由于未考虑对输入字符串进行检测,若输入错误字符串未给出警告。


你可能感兴趣的:(QT,vs2008,qt,Calculator)