Qt Creator中的“未定义的引用”错误

时间:2011-01-03 14:01:29

标签: qt qt-creator undefined-reference

我正在尝试将一些有效的Visual C ++代码导入到Qt Creator中,并且我遇到了一些我无法解释的编译错误。这是我的代码:

// TabSprite.h

#include <GraphicsItem.h>

namespace appetizer {

class TabSprite : public GraphicsItem {

public:

  TabSprite(GraphicsWindow* parentWindow);

}

// TabSprite.cpp

#include <TabSprite.h>
using namespace appetizer;

TabSprite::TabSprite(GraphicsWindow* parentWindow): GraphicsItem(parentWindow) {

}

Qt Creator给我这个错误(在TabSprite.cpp中的构造函数声明中):

  

对'appetizer :: GraphicsItem :: GraphicsItem(appetizer :: GraphicsWindow *)

的未定义引用

GraphicsItem已正确声明GraphicsItem.h,因此我不明白为什么编译器找不到它。任何人都可以看到这段代码有什么问题吗?

2 个答案:

答案 0 :(得分:1)

这意味着您没有定义GraphicsItem的构造函数。

答案 1 :(得分:0)

构造函数可能在TabSprite.h中声明(虽然你的代码没有显示)。这就是它编译的原因。但构造函数不是定义在任何地方,或者不太可能,定义它的单元不包括在链接过程中。这就是为什么它没有链接。