VS出现error LNK2005,error C4430,error C2011
1、error LNK2005:
在头文件“a.h”中定义了结构体类型和函数定义,生成工程的时候,出现LNK2005错误。
经过排查是a.h头文件在多个头文件中引入造成的。因为这样会使头文件a中定义的函数进行多次重复定义;解决方法是把在头文件a中定义的函数定义在a.cpp文件。
若在a.h头文件中定义变量int a,也会导致变量a重复定义。
注:LNK2005的错误也可参考https://blog.csdn.net/u012145971/article/details/50268129
2、error C4430
该错误可能由以下问题之一导致:
(1)没有包含头文件。
(2)缺少宏定义,导致项目不能根据宏定义确定使用哪一个头文件。
(3)函数声明有返回值,函数未写返回值。
(4)头文件包含顺序错误。
(5)头文件互相包含。
该错误参考于https://blog.csdn.net/skdkjzz/article/details/17072277
3、error C2011
该问题以error C2011: “sockaddr_in”:“struct”类型重定义为例:
该问题是由于windows.h和winsock2.h存在有类型重定义,方法以下2种方法之一,推荐第二种:
(1)#include<windows.h>之前 #include <winsock2.h>
(2)在C/C++预处理中添加WIN32_LEAN_AND_MEAN
遇到问题介绍:
1、遇到C4430,填写命令宏HAVE_WINSOCK_H,让项目选择winsock.h头文件;但将别人模块代码引入自己的项目中时,出现了C2011错误。
原因是再解决C4430问题时,选择的winsock.h头文件,但别人模块代码中选择的是winsock2.h,最后将解决C4430的宏换成HAVA_WINSOCK2_H,让项目选择winsock2.h,解决了该问题。
出现该问题原因包含头文件与其他模块头文件包含冲突导致。
VS出现error LNK2005,error C4430,error C2011相关推荐
- ZZmsvcprt.lib(MSVCP90.dll) : error LNK2005:已经在libcpmtd.lib(xmutex.obj) 中定义
FROM: http://blog.csdn.net/sptoor/article/details/6203376 很久没有写程式设计入门知识的相关文章了,这篇文章要来谈谈程式库 (Library) ...
- error LNK2005: “找到一个或多个多重定义的符号” 已经在 xxxx.obj 中定义 的解决方法
error LNK2005: "找到一个或多个多重定义的符号" 已经在 xxxx.obj 中定义 的解决方法 参考文章: (1)error LNK2005: "找到一个或 ...
- msvcprt.lib(MSVCP90.dll) : error LNK2005:已经在libcpmtd.lib(xmutex.obj) 中定义
转载 很需要补充的知识. 可惜网络阅读一直不是强项. 目前实在有点看不进去. 先保存下来吧... 牛到连评论都是贼深奥滴! 很久没有写程式设计入门知识的相关文章了,这篇文章要来谈谈程式库 (Libra ...
- greta的问题及解决: LIBCMTD.lib(_wctype.obj) : error LNK2005: _iswspace already defined in xxx.obj...
greta,一个开源正则表达式模板库: http://research.microsoft.com/projects/greta/ 在debug unicode multithread dll的时候, ...
- [转]关于形如--error LNK2005: xxx 已经在 msvcrtd.lib ( MSVCR90D.dll ) 中定义--的问题分析解决...
关于形如--error LNK2005: xxx 已经在 msvcrtd.lib ( MSVCR90D.dll ) 中定义--的问题分析解决 转自:http://hi.baidu.com/qinfen ...
- 关于形如--error LNK2005: xxx 已经在 msvcrtd.lib ( MSVCR90D.dll ) 中定义--的问题分析解决...
转自:http://hi.baidu.com/qinfengxiaoyue/item/ff262ccfb53b4c2ba0b50a89 引自:http://blog.csdn.net/sptoor/a ...
- VS2010 VC++ 编译出错 ---error LNK2005: public: virtual __thiscall CMemDC::~CMemDC(void)
uafxcwd.lib(afxglobals.obj) error LNK2005: "public: virtual __thiscall CMemDC::~CMemDC(void)&qu ...
- error LNK2005: _DllMain@12 already defined的解决办法
用Visual C++编写DLL,如果在new project时选了MFC DLL,而后又想写成Regular DLL,即拥有自己的DllMain()入口函数,则在build时会遇到类似如下的link ...
- C++中的“error:LNK2005 已经在*.obj中定义”异常
C++中的"error:LNK2005 已经在*.obj中定义"异常问题 异常现象如下: C++中的"error:LNK2005 已经在*.obj中定义" ...
- 关于错误error C4430 error C2365 error C2078 error C2440 error C2143的处理。
关于错误error C4430 error C2365 error C2078 error C2440 error C2143的处理. 楼主在公司接手了一段代码.编译的时候发现一个很奇怪的问题,就是获 ...
最新文章
- .NET MVC Filter异常处理
- 使用python调用matlab方法
- 多元线性回归分析matlab实验报告,利用MATLAB进行多元线性回归.ppt
- 想都不敢想!这8个神奇“黑科技”原来已经有人弄出来了
- 恶意造谣水滴筹的违法分子已被警方依法处理
- 解决sendmail服务启动慢的方法
- phpstrom+xdebug调试远程服务器代码
- POJ1555 ZOJ1720 UVA392 UVALive5309 Polynomial Showdown题解
- java 参数类型转换_java – 如何从通配符类型转换为参数化类型?
- 算法之BFS算法框架
- android studio深色模式,Xamarin 中的深色模式
- 美团外卖与饿了么竞品分析
- C++题目分享之锯木头
- STM32单片机的启动模式 三种BOOT模式介绍
- linux12企业实战 -- 37zabbix企业微信通知配置
- 消灭老鼠c语言题目,老鼠智力题-关于老鼠的智力题-关于老鼠的话题-33IQ
- 【实验五 一维数组】7-3 sdut-C语言实验-区间之和
- 安卓最酷最炫的3D桌面 SPB主题SPB Shell 3D最新版评测
- python用于pmc排产可以吗_生产计划管理PMC如何有效实施?
- Sql order by 数据排序 优先级问题