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
谢谢大家!!!!!!
要确认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 个无法解析的外部命令
二、问题原因
根据输出提示可以发现是无法解析到WinMain函数,而我们又知道WinMain函数是windows窗口程序的入口点,而我们编写的程序是控制台程序,应该是是我们工程属性设置错误。
三、解决办法
Visual Studio的资源管理器窗口中选中发生错误的工程,右键选择属性菜单,弹出如下所示的属性设置窗口,选择链接器,子系统;然后依据错误的具体信息选择对应的子系统即可。
如果您觉得文章对您有用,记得点赞收藏哦!谨防丢失!
以上是关于error LNK2019: 无法解析的外部符号的主要内容,如果未能解决你的问题,请参考以下文章
error LNK2019: 无法解析的外部符号 求解答..
error LNK2019: 无法解析的外部符号 WinMain,error LNK2001: 无法解析的外部符号 WinMain