vs编译调试遇到问题

 

1.C2589 “(”:“::”右边的非法标记

(转载自:https://blog.csdn.net/ldepn/article/details/78647114

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

1>api.obj : error LNK2019: 无法解析的外部符号 __imp__WSAGetLastError@0,该符号在函数 "public: int __thiscall CUDTUnited::startup(void)" (?startup@CUDTUnited@@QAEHXZ) 中被引用

(转载自:https://blog.csdn.net/renguoqing1001/article/details/52848232

!!!是头文件和lib文件缺失!!!!

(我是在配置pcl的时候,以为只要引入属性表就可以了,但实际上还要在自己项目上在配置一下pcl依赖项才行)

具体问题具体分析,网上的解决方案:

1、查看是否头文件和lib都已经导入。(我已经设置正确,仍然有错,看方法2)

一般这种方法很难达到效果,网上也好多人说,知道这种错,但是我不知道缺哪种lib啊.....这就尴尬了。

2、查看是否有引用的其他项目(需要你提前知道他们的引用关系)

我出现这种情况是在一个解决方案中有好多个项目,其中它们之间有相互引用的关系。我新建项目后,使用了以前的引用文件,但是我没有设置引用关系。具体方案:

项目右键--属性或者是引用,效果一样:

然后就是设置相应的引用项,点击添加新引用(N)按钮进行引用:

设置完以后重新编译运行。错误么有了。

 

题外话:

也许你说了,我哪知道他们的引用关系。一般都可以从错误提示中看出来的。比如:

TraCIAPI.obj : error LNK2019: 无法解析的外部符号 "public: virtual void __thiscall tcpip::Storage::writeInt(int)" (?writeInt@Storage@tcpip@@UAEXH@Z),该符号在函数 "protected: void __thiscall TraCIAPI::send_commandSimulationStep(__int64)const " (?send_commandSimulationStep@TraCIAPI@@IBEX_J@Z) 中被引用

其中的 tcpip::Storage::writeInt(int)和TraCIAPI::send_commandSimulationStep这两个函数你完全可以去找到的,根据提示提到的文件和函数,将提到的相关的项目进行引用就可以了。不过一般引起这种错误的原因是,你拿着别人的项目在自己的电脑上跑,那么你可以问一下原作者的引用关系。不过还是自己动手比较快。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值