Windyland 内核崩坏

在Windows下搭建C++11 编译环境

由于现实的一些原因,并不是所有人都能很方便的享受到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模式的。