Доброго времени суток. У меня такая проблема
main.cpp
Код C++
#include "main.h"
#include <QtGUI>
#include <QHBoxLayout>
#include <QtCore/qcoreevent.h>
#include <QWidget>
#include <Calculator.h>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
Calculator calkulator;
calkulator.setWindowTitle("Calkulator");
calkulator.resize(230,200);
calkulator.show();
return calkulator.exec();
}
Calculator.h
#ifndef CALCULATOR_H
#define CALCULATOR_H
#include <QStack>
#include <QLCDNumber>
#include <QPushButton>
//==================================
class Calculator : public QWidget
{
Q_OBJECT
private:
QLCDNumber *lcd;
QStack<QString> stk;
QString disp;
public:
Calculator(QWidget *wgt=0);
QPushButton* createButton(const QString &str);
void calculate();
public slots:
void slotButtonCliked();
};
#endif // CALCULATOR_H
Calculator.cpp
#include <Calculator.h>
#include "main.h"
#include <QtGUI>
#include <QBoxLayout>
#include <QWidget>
Calculator::Calculator(QWidget *wgt/*=0*/):QWidget(wgt)
{
lcd=new QLCDNumber(12);
lcd->setSegmentStyle(QLCDNumber::Flat);
lcd->setMinimumSize(150,50);
QChar buttons[4][4]={{'7','8','9','/'},
{'4','5','6','*'},
{'1','2','3','-'},
{'0','.','=','+'},
};
QGridLayout *lay=new QGridLayout;
lay->addWidget(lcd,0,0,1,4);
lay->addWidget(createButton("CE"),1,3);
for (int i=0; i<4; ++i)
{ for (int j=0; j<4; ++j)
{
lay->addWidget(createButton(buttons[i][j]),i+2,j);
}
}
QPushButton* Calculator::createButton(QString &str)
{
QPushButton *pcmd=new QPushButton(str);
pcmd->setMinimumSize(40,40);
connect(pcmd, SIGNAL(clicked()), SLOT(slotButtonCliked()));
return pcmd;
}
void Calculator::calculate()
{
double dOperand = stk.pop().toDouble();
double dOperand2= stk.pop().toDouble();
double dResult = 0;
QString strOper = stk.pop();
if (strOper=="+")
{
dResult=dOperand+dOperand2;
}
if (strOper=="-")
{
dResult=dOperand-dOperand2;
}
if (strOper=="*")
{
dResult=dOperand*dOperand2;
}
if (strOper=="/")
{
dResult=dOperand/dOperand2;
}
lcd->display(dResult);
}
setLayout(lay);
}
показывает такие ошибки:
a function-definition is not allowed here before '{' token;
a function-definition is not allowed here before '{' token;
expected '}' at and of input;
Прошу помощи...
вроде бы не хватает скобки но они все есть