这是我在这个论坛上的第一个问题,所以我很抱歉代码包含的格式。
我有一个LNK2005错误发生在我正在处理的小项目上,大多数关于SOF和网页上其他页面的其他问题都被错误地包含在另一个.cpp代码中的.cpp代码或者包括一个.h代码段。虽然这对其他人有帮助,但我只有2个标题,两者都只包含在各自的.cpp和main.cpp中。基本上其他帖子对我有帮助,因为我没有多次包含标题或在其中定义任何内容或包括.cpps
我的代码:
eingabefeld.h
#ifndef EINGABEFELD_H
#define EINGABEFELD_H
#include <QWidget>
#include <QMainWindow>
namespace Ui {
class eingabefeld;
}
class eingabefeld : public QWidget
{
Q_OBJECT
public:
explicit eingabefeld(QWidget *parent = 0);
~eingabefeld();
signals:
void signal_taste(char);
private:
Ui::eingabefeld *ui;
};
#endif // EINGABEFELD_H
uebung.h
#ifndef UEBUNG_H
#define UEBUNG_H
#include <QMainWindow>
namespace Ui {
class uebung;
}
class uebung : public QMainWindow
{
Q_OBJECT
public:
explicit uebung(QWidget *parent = 0);
~uebung();
public slots:
void signals_taste(char taste);
private:
Ui::uebung *ui;
};
#endif // UEBUNG_H
eingabefeld.cpp
#include "eingabefeld.h"
#include "ui_eingabefeld.h"
eingabefeld::eingabefeld(QWidget *parent) :
QWidget(parent),
ui(new Ui::eingabefeld)
{
ui->setupUi(this);
}
eingabefeld::~eingabefeld()
{
delete ui;
}
void eingabefeld::signal_taste(char taste)
{
}
uebung.cpp
#include "uebung.h"
#include "ui_uebung.h"
uebung::uebung(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::uebung)
{
ui->setupUi(this);
}
uebung::~uebung()
{
delete ui;
}
void uebung::signals_taste(char taste)
{
}
的main.cpp
#include "eingabefeld.h"
#include "uebung.h"
#include <QApplication>
#include <QObject>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
uebung w;
/*
w.show();
*/
eingabefeld e;
e.show();
QObject::connect(&e,SIGNAL(on_textEdit_textChanged(char)),&w,SLOT(on_textEdit_textChanged(char)));
return a.exec();
}