基于Qt6的现代化桌面计算器应用程序,采用MVC(Model-View-Controller)架构设计。 由重庆邮电大学 24级数学系 邓翀宸 开发
- 直接运行: 双击
dist\calculator.exe - 或使用脚本: 双击
运行计算器.bat
- 基本四则运算(加、减、乘、除)
- 小数点支持
- 清除功能
- 错误处理(如除零错误)
- 现代化Qt6界面
- 跨平台兼容性
- 完整的MVC架构
Calculator/
├── CMakeLists.txt # CMake构建配置
├── README.md # 项目说明
├── docs/ # 文档目录
├── include/ # 头文件目录
│ ├── calculator_controller.h
│ ├── calculator_model.h
│ ├── calculator_view.h
│ └── math_operations.h
├── resources/ # 资源文件目录
├── src/ # 源代码目录
│ ├── calculator_controller.cpp
│ ├── calculator_model.cpp
│ ├── calculator_view.cpp
│ ├── main.cpp
│ └── math_operations.cpp
└── tests/ # 测试文件目录
└── test_calculator.cpp
- C++17 或更高版本
- wxWidgets 3.1+
- CMake 3.10+ (可选)
- GCC 或 MSVC 编译器
# 使用VS Code中的构建任务
Ctrl+Shift+P -> Tasks: Run Task -> build或者在终端中运行:
g++ src/main.cpp src/calculator_model.cpp src/calculator_view.cpp src/calculator_controller.cpp src/math_operations.cpp -o calculator.exe -ID:/DevTools/wxWidgets-3.3.1/include -ID:/DevTools/wxWidgets-3.3.1/lib/gcc_x64_lib/msw -LD:/DevTools/wxWidgets-3.3.1/lib/gcc_x64_lib -lwxmsw32u_core -lwxbase32u -lwxpng -lwxzlib -mwindowsmkdir build
cd build
cmake ..
cmake --build .编译成功后,运行生成的可执行文件:
./calculator.exe # Windows
./calculator # Linux/macOS# 编译测试程序
g++ tests/test_calculator.cpp src/calculator_model.cpp src/math_operations.cpp -o test_calculator.exe -Iinclude
# 运行测试
./test_calculator.exe- 数字输入: 点击数字按钮0-9输入数字
- 运算符: 点击+、-、×、÷按钮选择运算
- 小数点: 点击"."按钮输入小数
- 计算: 点击"="按钮执行计算
- 清除: 点击"C"按钮清除当前输入
- Model (CalculatorModel): 处理计算逻辑和数据状态
- View (CalculatorView): 负责用户界面显示和用户交互
- Controller (CalculatorController): 协调Model和View之间的通信
- 提供基础数学运算功能
- 包含除零错误处理
- 维护计算器状态
- 处理数字输入、运算符和计算逻辑
- 支持小数和错误状态管理
- wxWidgets图形界面
- 按钮布局和事件处理
- 显示更新和错误提示
- 连接Model和View
- 处理用户输入事件
- 更新界面显示
- 添加更多数学函数(sin, cos, sqrt等)
- 支持括号运算
- 历史记录功能
- 键盘输入支持
- 主题切换功能
欢迎提交Issue和Pull Request来改进这个项目。
本项目采用MIT许可证。