winsock2.h(112) : error C2011: 'fd_set' : 'struct' type redefinition
<windows.h>中已经包含了早期版本的<winsock.h> (windows socket 1.1)
参照<stdafx.h>中的做法,在#include <windows.h> 前添加
#define WIN32_LEAN_AND_MEAN
#define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers
#include <windows.h>
#include <winsock2.h>
#include <ws2tcpip.h>
#pragma comment(lib,"ws2_32.lib")
或者颠倒两者的顺序
#include <winsock2.h>
#include <windows.h>
#include <ws2tcpip.h>
#pragma comment(lib,"ws2_32.lib")

本文解决在包含winsock2.h时出现的C2011错误,详细介绍了如何通过预定义宏WIN32_LEAN_AND_MEAN及调整包含顺序来避免类型重定义冲突。
759

被折叠的 条评论
为什么被折叠?



