[編譯錯誤:warning C4005]ws2def.h(91): warning C4005: “AF_IPX”: 宏重定義 winsock.h(460) : 參見“AF_IPX”的前一個定義

【問題】

ws2def.h(91): warning C4005: “AF_IPX”: 宏重定義; winsock2.h(460) : 參見“AF_IPX”的前一個定義

【原因】

windows.h頭文件中已經包含有winsock.h,winsock.h和winsock2.h定義了一樣的宏。

【解決方案】

方案一:定義宏WIN32_LEAN_AND_MEAN 

屬性->配置屬性->c/c++ ->預處理器->預處理器定義:添加WIN32_LEAN_AND_MEAN 

如果該宏定義存在,windows.h就不會包含winsock.h。

方案二:將winsock2.h文件寫在windows.h之前。

#include "winsock2.h"
#include "windows.h"


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章