Chinaunix首页 | 论坛 | 博客
  • 博客访问: 164192
  • 博文数量: 19
  • 博客积分: 10
  • 博客等级: 民兵
  • 技术积分: 722
  • 用 户 组: 普通用户
  • 注册时间: 2011-10-12 14:11
个人简介

而立之年,一事无成。

文章分类

全部博文(19)

文章存档

2016年(1)

2014年(4)

2013年(14)

我的朋友

分类: Windows平台

2013-05-06 10:58:39

无意中遇到很多和“ws2def.h”相关的编译错误,都是重定义引发的。为啥呢?
“winsock2.h”和"windows.h"的顺序:
“winsock2.h”定义了_WINSOCKAPI_,原意是不要编译''winsock.h"。如果"windows.h"在“winsock2.h”前面,那么会先include “winsock.h编译,后再“winsock2.h”时遇到了重定义。
所以先include 
“winsock2.h”再include "windows.h"就可以避开这些重定义。
另外一条路:在
include "windows.h"之前添加#define _WINSOCKAPI_。
这两个方法都是为了在编译“winsock2.h”的同时不要编译''winsock.h",水火不容啊~~~
阅读(6101) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~