error LNK2019: 无法解析的外部符号

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了error LNK2019: 无法解析的外部符号相关的知识,希望对你有一定的参考价值。

1>Experiment2_functions.obj : error LNK2019: 无法解析的外部符号 "class Linklist<class Prt> __cdecl doIntersection(class Linklist<class Prt> &,class Linklist<class Prt> &)" (?doIntersection@@YA?AV?$Linklist@VPrt@@@@AAV1@0@Z),该符号在函数 "void __cdecl menu2Q(void)" (?menu2Q@@YAXXZ) 中被引用

但是这个函数:
template<class dtp> Linklist<dtp> doIntersection(Linklist<dtp> &,Linklist<dtp> &)
的定义与void menu2Q() 的定义都在同一个cpp中,而且在menu2Q中进行了doIntersection的声明;
再而且Linklist类定义中已有友元函数声明,类所在的头文件也被包含进来了;
再而且doIntersection并不访问Prt类的私有成员。

看了好久也查了好多,实在搞不懂是咋回事T_T

谢谢大家!!!!!!

参考技术A 你用了zylib库函数了吧。这个错误说明你包含了zylib.h,但没有正确导入它的链接库。
要确认zylib的链接库放在正确的位置(一般放在VS/VC目录子目录,参考VC的选项目录设置),并被工程正确的导入(可以在工程设置中导入,也可以通过代码)

error LNK2019: 无法解析的外部符号 WinMain,error LNK2001: 无法解析的外部符号 WinMain

一、问题

Debug版本:

1>MSVCRTD.lib(exe_winmain.obj) : error LNK2019: 无法解析的外部符号 WinMain,该符号在函数 "int __cdecl invoke_main(void)" (?invoke_main@@YAHXZ) 中被引用1>E:\\worspace_Gis\\qgis-3.10.0\\dependency\\SQLite3\\x64\\Debug\\SQLite3d.exe : fatal error LNK1120: 1 个无法解析的外部命令

Release版本:

1>MSVCRT.lib(exe_winmain.obj) : error LNK2001: 无法解析的外部符号 WinMain1>E:\\worspace_Gis\\qgis-3.10.0\\dependency\\SQLite3\\x64\\Release\\SQLite3.exe : fatal error LNK1120: 1 个无法解析的外部命令

errorerror

二、问题原因

根据输出提示可以发现是无法解析到WinMain函数,而我们又知道​WinMain​函数是​windows​窗口程序的入口点,而我们编写的程序是控制台程序,应该是是我们工程属性设置错误。

三、解决办法

       Visual Studio的资源管理器窗口中选中发生错误的工程,右键选择属性菜单,弹出如下所示的​属性设置窗口,选择链接器,子系统​;然后依据错误的具体信息选择对应的子系统即可。

error

如果您觉得文章对您有用,记得​点赞收藏哦​!谨防丢失!


以上是关于error LNK2019: 无法解析的外部符号的主要内容,如果未能解决你的问题,请参考以下文章

error LNK2019: 无法解析的外部符号

error LNK2019: 无法解析的外部符号

error LNK2019: 无法解析的外部符号

error LNK2019: 无法解析的外部符号

error LNK2019: 无法解析的外部符号 求解答..

error LNK2019: 无法解析的外部符号 WinMain,error LNK2001: 无法解析的外部符号 WinMain