尝试解决LNK2019错误我制作了一个小代码,以便在我的项目之外再次出现此错误。 错误不会出现在同一个地方,但接缝是相似的。 我正在使用Visual Studio 2013而我没有尝试使用其他IDE。
我的节目:
main.cpp:
#include "functions.hpp"
int main(int argc, char *argv[]){
core::function1();
return 0;
}
functions.hpp:
#ifndef _functions_hpp
#define _functions_hpp
#include "core.hpp"
namespace core{
void function1();
}
#endif
core.hpp:
#ifndef _core_hpp
#define _core_hpp
#include <string>
namespace core{
//some defines
}
#endif _core_hpp
functions.cpp:
#include "functions.hpp"
#include "Input_Output.hpp"
namespace core{
void functions(){
type_writer writer;
writer.save();
}
}
Input_Output.hpp:
#ifndef _INPUT_OUTPUT_HPP
#define _INPUT_OUTPUT_HPP
namespace core{
class type_writer{
public:
void save();
};
}
#endif
Input_Output.cpp:
#include "Input_Output.hpp"
namespace core{
void type_writer::save(){
}
}
日志错误:
Comand Line Compile:
C:\ Program Files(x86)\ Microsoft Visual Studio 12.0 \ VC \ bin \ CL.exe / c / ZI / nologo / W3 / WX- / Od / Oy- / D WIN32 / D _DEBUG / D _CONSOLE / D _LIB / D _UNICODE / D UNICODE / Gm / EHsc / RTC1 / MDd / GS / fp:exact / Zc:wchar_t / Zc:forScope / Fo“Debug \”/Fd“Debug [vc120.pdb”/ Gd / TP / analyze- / errorReport:提示main.cpp
链接:
C:\ Program Files(x86)\ Microsoft Visual Studio 12.0 \ VC \ bin \ CL.exe / c / ZI / nologo / W3 / WX- / Od / Oy- / D WIN32 / D _DEBUG / D _CONSOLE / D _LIB / D _UNICODE / D UNICODE / Gm / EHsc / RTC1 / MDd / GS / fp:exact / Zc:wchar_t / Zc:forScope / Fo“Debug \”/Fd“Debug [vc120.pdb”/ Gd / TP / analyze- / errorReport:提示main.cpp
错误:
1&gt; main.obj:错误LNK2019:未解析的外部符号“void __cdecl core :: function1(void)”(?function1 @ core @@ YAXXZ)在函数_main中引用
1&gt; E:\ Nicolas \ frame_external_error \ Debug \ frame_external_error.exe:致命错误LNK1120:1个未解析的外部
在我的原始项目中,此错误来自另一个外部符号(来自type_writer writer;)但我想如果我理解这个例子中错误的起源是什么,我应该找到一种方法来解决它在我自己的项目中。
感谢阅读!