“sockaddr”: “struct”類型重定義的錯誤的解決辦法《轉》


原帖地址:https://blog.csdn.net/clever101/article/details/100163301

  windows.h和winsock2.h存在有類型重定義,往往體現在VC程序中包含winsock2.h時出現編譯錯誤:

error C2011: “sockaddr_in”:“struct”類型重定義

 

網友提出的解決辦法是將

#include<windows.h>之前 #include <winsock2.h>

 

這個不是好的解決辦法,因為很多程序比如MFC程序它本身就不是直接包含windows.h,你找不到它的包含位置。好的解決辦法是添加WIN32_LEAN_AND_MEAN這個預處理器,具體如下圖:

 

測試環境:

64位win7,VS2015
————————————————
版權聲明:本文為CSDN博主「clever101」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/clever101/article/details/100163301


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM