vs工程cpp从0搭建踩坑 minwinbase.h重复定义 已经在 xxx.obj 中定义 __imp_bind
1 minwinbase.h重复定义问题
将minwinbase.h修改为Windows.h
2 错误 LNK2001 无法解析的外部符号 __imp_bind WebRTCiocp F:\gitea\custom\project\02-webRTC\WEBRTCIOCP\WebRTCiocp\baseiocprtc.obj 1
却少库调用 可以在配置文件中搞,不过我喜欢一行代码搞定
#pragma comment(lib,"ws2_32.lib")//包含附加依赖项,也可以在工程--属性里面设置
3 win常用宏定义,用于压制各种报错
#define _WINSOCK_DEPRECATED_NO_WARNINGS
#define _CRT_SECURE_NO_WARNINGS
4 如果不定义类的格式,请注意 *.h 中尽量不要写函数实现,只写函数声明,函数实现,尽可能写在*.cpp中,具体自己尝试,我尝试了,会出错
5 在纯*.h中全局变量不能定义在*.h中,必须在对应的*.cpp中定义,然后再在对应的*.h中加上extern 如下(相当于全局变量,class中的public)
如果在*.cpp中定义的变量,仅仅是在本地调用,则无此限制(相当于局部变量,class中的private,并且外部还看不见,不知道内部的原理)
6 LNK2005 "int LOG_LEVEL" (?LOG_LEVEL@@3HA) 已经在 baseiocprtc.obj 中定义 WebRTCiocp LNK2001 无法解析的外部符号 __imp_bind WebRTCiocp
这些都是全局变量未加extern的结果,见4和5
//
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 张高兴的大模型开发实战:(一)使用 Selenium 进行网页爬虫
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构