作者:網事如風
鏈接:https://www.zhihu.com/question/22923569/answer/23172337
來源:知乎
著作權歸作者所有,轉載請聯系作者獲得授權。
鏈接:https://www.zhihu.com/question/22923569/answer/23172337
來源:知乎
著作權歸作者所有,轉載請聯系作者獲得授權。
完全支持C++11的好像只有gcc4.8.x和clang3.3+,據說clang3.4完全支持C++14了,不過俺還沒用過C++14....
想用gcc的話可以用mingw 官網 MinGW | Minimalist GNU for Windows,不過我更喜歡這個版本 MinGW-builds
想用clang的話,一般都是自己編譯,不過clang在win上表現不太好,libcxx運行時不支持win,用mingw編譯出來的clang默認用的是gcc的libstdc++做運行時,但是如果libstdc++版本高於4.7的話會有bug,要自己改clang的代碼,而且默認的頭文件的路徑有問題,會找不到系統的頭文件(比如iostream、stdio.h之類的),官方編譯的也有這些bug,可以用gdb調試。如果用VS編譯clang,默認用的是VC的運行時,沒發現有啥bug,不過讓人蛋碎的是clang不支持生成VC的PDB格式的調試信息,生成的代碼沒法用VS進行源碼級得調試(嚴重吐槽一下M$不公開PDB文件格式),能不能用gdb調試我沒試過。想自己編譯的話可以參考下我寫的這個文章: 在Windows上使用CodeLite+MinGW+Clang進行開發
想用gcc的話可以用mingw 官網 MinGW | Minimalist GNU for Windows,不過我更喜歡這個版本 MinGW-builds
想用clang的話,一般都是自己編譯,不過clang在win上表現不太好,libcxx運行時不支持win,用mingw編譯出來的clang默認用的是gcc的libstdc++做運行時,但是如果libstdc++版本高於4.7的話會有bug,要自己改clang的代碼,而且默認的頭文件的路徑有問題,會找不到系統的頭文件(比如iostream、stdio.h之類的),官方編譯的也有這些bug,可以用gdb調試。如果用VS編譯clang,默認用的是VC的運行時,沒發現有啥bug,不過讓人蛋碎的是clang不支持生成VC的PDB格式的調試信息,生成的代碼沒法用VS進行源碼級得調試(嚴重吐槽一下M$不公開PDB文件格式),能不能用gdb調試我沒試過。想自己編譯的話可以參考下我寫的這個文章: 在Windows上使用CodeLite+MinGW+Clang進行開發