Bonsoir,
Je débute avec Qt et je rencontre une erreur qui m'intrigue. Voici le code source de mes deux fichiers:

Main.cpp :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
#include <QApplication>
#include <QPushButton>
#include "Fenetre.cpp"
int main(int argc, char *argv[])
{
    QApplication app(argc, argv);
    Fenetre fenetre;
    fenetre.show();
    return app.exec();
}
Fenetre.cpp :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <QWidget>
#include <QPushButton>
class Fenetre: public QWidget
{
private:
    QPushButton bouton1;
 
public:
    Fenetre():QWidget()
    {
        setFixedSize(300,400);
        bouton1 = new QPushButton("Quitter", this);
        bouton1.move(60,60);
        QObject::connect(bouton1, SIGNAL(clicked()), qApp, SLOT(quit()));
    }
};
et voici l'erreur:

QtHello/Fenetre.cpp:12: erreur : no match for ‘operator=’ in ‘((Fenetre*)this)->Fenetre::bouton1 = (((const QString&)(& QString(((const char*)"Quitter")))), (operator new(40u), (<statement>, ((QPushButton*)<anonymous>))))’

Cela veut-il dire que je dois définir l'opérateur d'affectation ? Alors que la classe en question est QPushButton qui fait partie de Qt ?

Je vous remercie d'avance pour toute réponse.
Ben