C++结合QT实现带有优先级的计算器

这篇博客记录了使用C++和QT框架实现一个带有优先级的计算器的过程。目前计算器存在一些未解决的bug,代码有待优化和重构。计算器仅支持正数、小数的加、减、乘、除及括号运算,不处理输入错误的表达式。
摘要由CSDN通过智能技术生成

MyCalculator.h

#pragma once

#include <QtWidgets/QMainWindow>
#include <QStack>
#include <QString>
#include "ui_MyCalculator.h"

class MyCalculator : public QMainWindow
{
   
    Q_OBJECT

public:
    MyCalculator(QWidget *parent = Q_NULLPTR);
	
/*	void setnum1(int num);
	void setnum2(int num);
	void setflag(int f);
	int calculartor();
*/


private slots:
	void on_number_Button_clicked();
	void on_action_Button_clicked();
	void on_comma_Button_clicked();
	void on_action_Button_c_clicked();
	void on_action_Button_d_clicked();
	void on_action_Button_e_clicked();

/*
	void on_action_Button_equal_clicked();
	void on_number_Button_clicked();
	void on_action_Button_clicked();
	void on_action_Button_c_clicked();
*/

private:
    Ui::MyCalculatorClass ui;

};

MyCalculator.main

#include "MyCalculator.h"
#include <QtWidgets/QApplication>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    MyCalculator w;
    w.show();
    return a.exec();
}

MyCalculator.cpp

#include "MyCalculator.h"

#include<iostream>
using namespace std;
#include<stack>
#include<vector>
#include<cstdlib>
#include<limits.h>

MyCalculator::MyCalculator(QWidget *parent)
    : QMainWindow(parent)
{
   
    ui.setupUi(this);
	setWindowTitle(QStringLiteral("计算器"));
	ui.textBrowser->setFontPointSize(28);

	connect(ui.pushButton0, SIGNAL(clicked()), this, SLOT(on_number_Button_clicked()));
	connect(ui.pushButton1, SIGNAL(clicked()), this, SLOT(on_number_Button_clicked()));
	connect(ui.pushButton2, SIGNAL(clicked()), this, SLOT(on_number_Button_clicked()));
	connect(ui.pushButton3, SIGNAL(clicked()), this, SLOT(on_number_Button_clicked()));
	connect(ui.pushButton4, SIGNAL(clicked()), this, SLOT(on_number_Button_clicked()));
	connect(ui.pushButton5, SIGNAL(clicked()), this, SLOT(on_number_Button_clicked()));
	connect(ui.pushButton6, SIGNAL(clicked()), this, SLOT(on_number_Button_clicked()));
	connect(ui.pushButton7, SIGNAL(clicked()), this<
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值