명백한 내용이 누락되었지만 Qt 사용자 인터페이스에서 링크 오류를 제거 할 수 없습니다.QGraphicsView 하위 클래스가있는 생성자의 LNK2019
문제의 원인이되는 부분을 격리했습니다. 기본적으로 대화 형 오버 헤드 맵을 표시하려면 QGraphicsView
하위 클래스를 구현하고 있습니다. 웬일인지, 나는 생성자를 해결할 수 없다.
OverheadMap.h :
#ifndef OVERHEADMAP_H
#define OVERHEADMAP_H
#include <QGraphicsView>
class OverheadMap : public QGraphicsView {
Q_OBJECT
public:
OverheadMap();
};
#endif // OVERHEADMAP_H
OverheadMap.cpp :
#include "OverheadMap.h"
OverheadMap::OverheadMap() {
// Body
}
MAIN.CPP :
#include "OverheadMap.h"
int main(int argc, char *argv[])
{
OverheadMap *map = new OverheadMap();
}
LNK2019 :
main.obj:-1: error: LNK2019: unresolved external symbol "public: __thiscall OverheadMap::OverheadMap(void)" ([email protected]@[email protected]) referenced in function _main
OverheadMap
으로 QtCreator의 자동 완성 기능을 사용할 수 있습니다. QFrame과 유사한 하위 클래스 구현이 가능합니다. 여기서는 구문 오류가 의심됩니다.
무엇이 누락 되었습니까?
감사합니다.
그리고 'OverheadMap.cpp' 파일이 프로젝트에 있고 빌드 중입니까? –
프로젝트에 대한 Qt 생성 파일을 다시 빌드했는지 확인하십시오. 새로운 클래스는 자신의 파일을 가질 때까지 Q_OBJECT와 같은 Qt 구문을 이해하지 못합니다. – Lochemage
'OverheadMap.cpp'는 원본 폴더에 내가 만든 모든 .cpp 파일이며 적어도 10 번 이상 청소/재구성을 시도했습니다. 심지어 QtCreator를 닫거나 다시 열어 보았습니다. –