我正在尝试通过使用另一个 c++ 解决方案的文件来创建对象。
当我创建一个
MyClass1
目标程序时,会出现以下错误:1>main.obj : error LNK2019: unresolved external symbol "public: virtual __thiscall MyClass1::~MyClass1(void)" (??1MyClass1@@UAE@XZ) referenced in function _main 1>main.obj : error LNK2019: unresolved external symbol "public: __thiscall MyClass1::MyClass1(class QWidget *,class QFlags<enum Qt::WindowType>)" (??0MyClass1@@QAE@PAVQWidget@@V?$QFlags@W4WindowType@Qt@@@@@Z) referenced in function _main
当我创建
MyClass2
对象时,程序会创建对象。没有错误。
我应该怎么做才能MyClass1
正确创建对象?
我在相关来源中删除了所有不必要的部分。代码如下。
测试器文件main.cpp
#include "tester.h"
#include <QtGui/QApplication>
#include "myclasses.h"
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
tester w;
w.show();
MyClass1 aa;
MyClass2 bbb;
return a.exec();
}
myclasses.h文件
#ifndef MYCLASSES_H
#define MYCLASSES_H
#include <QtGui/QMainWindow>
#include "ui_myclasses.h"
class MyClass1 : public QMainWindow
{
Q_OBJECT
public:
MyClass1(QWidget *parent = 0, Qt::WFlags flags = 0);
~MyClass1();
void setthemall(int number);
private:
Ui::MyClass1Class ui;
int totalnumber;
};
class MyClass2
{
int param1;
void getit ();
};
#endif
myclasses.cpp文件
#include "myclasses.h"
MyClass1::MyClass1(QWidget *parent, Qt::WFlags flags)
: QMainWindow(parent, flags)
{
ui.setupUi(this);
}
MyClass1::~MyClass1()
{
}
void MyClass1::setthemall(int pnumber)
{
totalnumber=pnumber;
}
void MyClass2::getit() {
};