由於現實的一些原因,並不是所有人都能很方便的享受到C++11 特性。特別是C++ Primer 第五版 和 The C++ Programming Language 第四版等全面C++ 11 鋪開以後,這種不便就開始困擾了一些新手。
如果是Linux或者Mac OS X的環境,選擇 clang 3.3 (或者Xcode 4.6 以上)、 GCC 4.8.1 (主要發行版 Ubuntu 14.04、Debian 8、Fedora 20、CentOS 7 等) 或者參見 先前博客 就選擇一款適合自己需求的編譯器,就可以使用完全的C++11 的語言特性。
Windows 下的編譯鏈
可選的有
- Microsoft 的Visual Studio
- Mingw64 下的GCC
- Mingw64/MSVC下的Clang
- Intel C++ Compiler
實際上符合C++11 特性完整要求的,或者基本滿足要求的
- Visual Studio 2013/2015
- GCC 4.8.1 + Mingw64
- Mingw64/MSVC下的Clang >= 3.6
- Intel C++ Compiler 15
下面推薦幾個比較適合個人使用的環境
IDE 組
- Visual Studio 2013 Community Edition 免費使用的Vistual Studio,好處是不用付費。
- Visual Studio 2015 Preview 免費使用的Vistual Studio,好處是2015版本C++11特性支持更完整。
- Qt Creator 免費使用的跨平臺IDE,好處是可以自由選擇GCC/MSVC編譯鏈,還有基於libclang的代碼補全。
- CLion 新生代的IDE,好處是特性支持比較新,比如內建支持CMake。
Terminal 組
- cygwin 環境,需要通過手動選擇安裝gcc,好處是POSIX 特性支持完整。
- MSYS2 環境,需要通過pacman 手動安裝gcc或者clang,好處是可以安裝cygwin版本的工具又可以用mingw版本的工具輸出原生程序。
其他編譯鏈
- MSVC 內建在 Visual Studio 中。
- Intel C++ Compiler 商業版本,產生代碼質量高。
- mingw-build 使用人數衆多,更新也快。
- TDM-GCC 4.9.2 老牌Mingw環境的編譯鏈。
- nuwen MinGW Distro 包含常見庫如Boost的Mingw 編譯鏈,支持64位。
- Clang WinBuild 實驗性質。需要配合Visual Studio 或者Windows SDK 使用。
最後建議新手可以在IDE 組裏選擇或者在Terminal 組裏選擇。其他編譯鏈可以用於替換IDE/Terminal中默認的編譯鏈。
最後使用非MSVC編譯器的時候,記得選擇或者加入-std=gnu++11
的選項,不然默認是不會開啓C++11模式的。
http://cn.windyland.me/2015/04/27/programming-cxx11-on-windows/