0
我想通過使用另一個C++解決方案的文件創建對象。當我創建一個MyClass2
對象程序創建的對象LNK2019在另一個解決方案中創建對象時出錯C++
1>main.obj : error LNK2019: unresolved external symbol "public: virtual __thiscall MyClass1::~MyClass1(void)" ([email protected]@[email protected]) referenced in function _main
1>main.obj : error LNK2019: unresolved external symbol "public: __thiscall MyClass1::MyClass1(class QWidget *,class QFlags<enum Qt::WindowType>)" ([email protected]@[email protected]@@[email protected]@[email protected]@@@@Z) referenced in function _main
:
當我創建一個
MyClass1
對象程序給出的錯誤。沒有錯誤。
我該怎麼做才能正確創建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() {
};
>我在Visual Studio中構建了包含「myclasses.cpp」和「myclasses.h」的解決方案。 >然後我將「myclasses.h」的位置添加到項目屬性的「附加包含目錄」中。 >但我沒有將myclasses.obj文件添加到新解決方案中。我應該把它放在鏈接器的屬性? – trante 2011-02-06 16:48:25