我无法弄清楚为什么我会收到错误: main.obj:-1:错误:LNK2019:函数_main中引用的未解析的外部符号“public:__thiscall Standbywindow :: Standbywindow(void)”(?? 0Standbywindow @@ QAE @ XZ) 和 debug \ pointer_test.exe:-1:错误:LNK1120:1未解析的外部
Main.cpp的
#include <QCoreApplication>
#include <QDebug>
#include "standby.h"
Standbywindow *standby_window;
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
standby_window = new Standbywindow;
return a.exec();
}
standby.h
#ifndef STANDBY_H
#define STANDBY_H
#include <QDebug>
class Standbywindow{
public:
Standbywindow();
};
#endif // STANDBY_H
standby.cpp
#include "standby.h"
Standbywindow::Standbywindow(){
}
pointer_test.pro
#-------------------------------------------------
#
# Project created by QtCreator 2015-05-10T11:08:06
#
#-------------------------------------------------
QT += core
QT -= gui
TARGET = pointer_test
CONFIG += console
CONFIG -= app_bundle
TEMPLATE = app
SOURCES += main.cpp \
standby.cpp
HEADERS += \
standby.h
编译输出
09:08:23: Running steps for project pointer_test...
09:08:23: Configuration unchanged, skipping qmake step.
09:08:23: Starting: "C:\Qt\Tools\QtCreator\bin\jom.exe"
C:\Qt\Tools\QtCreator\bin\jom.exe -f Makefile.Debug
cl -c -nologo -Zm200 -Zc:wchar_t -Zi -MDd -GR -W3 -w34100 -w34189 -EHsc /Fddebug\pointer_test.pdb -DUNICODE -DWIN32 -DQT_CORE_LIB -I"..\pointer_test" - I"." -I"C:\Qt\5.4\msvc2010_opengl\include" -I"C:\Qt\5.4\msvc2010_opengl\include\QtCore" -I"debug" -I"C:\Qt\5.4\msvc2010_opengl\mkspecs\win32-msvc2010" -Fodebug\ @C:\Users\Mike\AppData\Local\Temp\main.obj.10328.16.jom
main.cpp
echo 1 /* CREATEPROCESS_MANIFEST_RESOURCE_ID */ 24 /* RT_MANIFEST */ "debug\\pointer_test.exe.embed.manifest">debug\pointer_test.exe_manifest.rc
if not exist debug\pointer_test.exe if exist debug\pointer_test.exe.embed.manifest del debug\pointer_test.exe.embed.manifest
if exist debug\pointer_test.exe.embed.manifest copy /Y debug\pointer_test.exe.embed.manifest debug\pointer_test.exe_manifest.bak
link /NOLOGO /DYNAMICBASE /NXCOMPAT /DEBUG /SUBSYSTEM:CONSOLE "/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='*' processorArchitecture='*'" /MANIFEST /MANIFESTFILE:debug\pointer_test.exe.embed.manifest /OUT:debug\pointer_test.exe @C:\Users\Mike\AppData\Local\Temp\pointer_test.exe.10328.2250.jom
main.obj : error LNK2019: unresolved external symbol "public: __thiscall Standbywindow::Standbywindow(void)" (??0Standbywindow@@QAE@XZ) referenced in function _main
debug\pointer_test.exe : fatal error LNK1120: 1 unresolved externals
jom: C:\Users\Mike\Documents\QT\build-pointer_test- Desktop_Qt_5_4_1_MSVC2010_OpenGL_32bit-Debug\Makefile.Debug [debug\pointer_test.exe] Error 1120
jom: C:\Users\Mike\Documents\QT\build-pointer_test- Desktop_Qt_5_4_1_MSVC2010_OpenGL_32bit-Debug\Makefile [debug] Error 2
09:08:26: The process "C:\Qt\Tools\QtCreator\bin\jom.exe" exited with code 2.
Error while building/deploying project pointer_test (kit: Desktop Qt 5.4.1 MSVC2010 OpenGL 32bit)
When executing step "Make"
09:08:26: Elapsed time: 00:03.
答案 0 :(得分:2)
确保standby.cpp在.pro文件中列为源文件,然后再次尝试运行QMake(build - &gt; run qmake),然后尝试构建。您也可以尝试清理/重建项目。