1
프로그램을 컴파일 할 때 ld returned 1 exit status
오류가 발생합니다. 여기에 코드 (MAIN.CPP)입니다 :Qt 생성자에서 "collect2 : ld가 1 종료 상태를 반환했습니다"
#include <QtGui/QApplication>
#include <QPushButton>
#include <QHBoxLayout>
#include <QLineEdit>
#include "widget.h"
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QPushButton *okayButtom = new QPushButton("Okay");
QMainWin *mainWin = new QMainWin("Say Pig!");
QHBoxLayout *Hbox = new QHBoxLayout;
QLineEdit *inputBox = new QLineEdit;
mainWin->setWindowTitle("Hello, Pig!");
Hbox->addWidget(inputBox);
Hbox->addWidget(okayButtom);
mainWin->setLayout(Hbox);
mainWin->show();
return app.exec();
}
는이 내가 UI 파일을 사용하지 않은
#ifndef WIDGET_H
#define WIDGET_H
#include <QtGui>
class QMainWin : public QWidget
{
Q_OBJECT
private:
QString WinTitle;
public:
QMainWin(const QString &title, QWidget *parent = 0):WinTitle(title)
{
this->setWindowTitle(WinTitle);
}
~QMainWin();
};
#endif // WIDGET_H
widget.h, 난 단지 CPP 소스 파일을 사용합니다.
는 "출력을 컴파일"창에서 모든 것을 붙여 넣을 수 있습니다 읽어? 도움이 될만한 오류 메시지가있을 수 있습니다. –
팁 : 자신의 클래스 중 대문자로 시작하여 다른 대문자로 시작하는 이름을 지정하지 마십시오. 이것은 Qt의 관습이며 어떤 시점에서는 이름 충돌을 얻을 수밖에 없습니다. 그것은 또한 당신의 코드를보고있는 누구에게나 매우 혼란 스럽습니다. –
주요 문제는 Q_OBJECT 매크로입니다. 그것을 제거하십시오. 내가 맞습니까? –