作者:网事如风
链接: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进行开发