Sto provando a creare una semplice applicazione GUI (finora) in Qt con C++ usando il compilatore MinGW. Tuttavia, il compilatore mi informa che ho un multiple definition of 'WiimoteScouter::WiimoteScouter(QWidget*)'
su line 4
di wiimotescouter.cpp
. Sto usando un assegno per assicurarmi che l'intestazione non sia inclusa più volte, ma a quanto pare non funziona, e non sono sicuro del perché.Definizioni multiple di C++ Qt
Ecco il file di intestazione:
#ifndef WIIMOTESCOUTER_H
#define WIIMOTESCOUTER_H
#include <QWidget>
class QLabel;
class QLineEdit;
class QTextEdit;
class WiimoteScouter : public QWidget
{
Q_OBJECT
public:
WiimoteScouter(QWidget *parent = 0);
private:
QLineEdit *eventLine;
};
#endif // WIIMOTESCOUTER_H
Ed ecco il file cpp:
#include <QtGui>
#include "wiimotescouter.h"
WiimoteScouter::WiimoteScouter(QWidget *parent) :
QWidget(parent)
{
QLabel *eventLabel = new QLabel(tr("Event:"));
eventLine = new QLineEdit;
QGridLayout *mainLayout = new QGridLayout;
mainLayout->addWidget(eventLabel, 0, 0);
mainLayout->addWidget(eventLine, 0, 1);
setLayout(mainLayout);
setWindowTitle(tr("Wiimote Alliance Scouter"));
}
Infine, il main.cpp:
#include <QtGui>
#include "wiimotescouter.h"
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
WiimoteScouter wiimoteScouter;
wiimoteScouter.show();
return app.exec();
}
Sembra più un errore di linker che uno di compilatore. Hai più di un file .cpp nel tuo file .pro? E anche l'invio del messaggio di errore completo. –
Perché il tuo progetto C++ ha.file php in esso? 0_o –
Il mio errore è copiarlo qui, è un .cpp, sono abituato a lavorare con PHP. ;) –