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

在Windows下搭建C++11 编译环境(附下载,包括mingw-build,TDM-GCC, nuwen MinGW Distro)的更多相关文章

  1. 【Go】windows下搭建go语言编译环境

    主要是协助杨哥做Kubernetes相关工作,由于Kubernetes和Docker都是由Go语言编写,因此改源码后还是需要go语言编译器来编译运行.所以打算先在windows上安装一下go语言环境. ...

  2. Windows下搭建objective C开发环境

    摘自:http://blog.csdn.net/zhanghefu/article/details/18320827 最近打算针对iPhone.iPod touch和iPad开发一些应用,所以,需要开 ...

  3. windows下搭建nginx+php开发环境

    windows下搭建nginx+php开发环境 1.前言 windows下大多我们都是下载使用集成环境,但是本地已经存在一个集成环境,但不适合项目的需求.因此准备再自己搭建一个环境. 2.准备 工具: ...

  4. Windows下搭建Spark+Hadoop开发环境

    Windows下搭建Spark+Hadoop开发环境需要一些工具支持. 只需要确保您的电脑已装好Java环境,那么就可以开始了. 一. 准备工作 1. 下载Hadoop2.7.1版本(写Spark和H ...

  5. 【RN - 基础】之Windows下搭建React Native开发环境

    前言 React Native由Facebook公司于2015年F8大会上开源,其主张“Learn once, write everywhere”.React Native的核心设计理念是:既拥有Na ...

  6. kubernetes实战之consul篇及consul在windows下搭建consul简单测试环境

    consul是一款服务发现中间件,1.12版本后增加servicemesh功能.consul是分布式的,可扩展的,高可用的根据官方文档介绍,目前已知最大的consul集群有5000个节点,consul ...

  7. Sublime Test 3 搭建C++11编译环境(Windows)

    0. 我的环境: Windows 8.1,Sublime Test 3 - Build 3126,CodeBlocks 16.01. 1. 下载Sublime Test 3,以及安装Package和各 ...

  8. Windows下搭建Android NDK开发环境及命令行编译

    首先说明本文内的相关安装操作参考<Pro Android C++ with the NDK>一书. 安装 Windows搭建Android NDK开发环境需要安装如下部分(同时需要配置对应 ...

  9. Windows下QT4.8.4编译环境的搭建(转载http://blog.csdn.net/bestgonghuibin/article/details/38933141)

    开始使用QT了,所以第一步就是把环境搭起来,这里小记一下,以免以后忘记. 1. 下载安装文件 要使用QT功能,那么必须要下载QT的源码,还必须要一个是用QT的编译环境,可以是VS2010,也可以是专用 ...

随机推荐

  1. QT无标题窗口在任务栏显示关闭(增加系统菜单)

    在对话框中使用了如下代码: setWindowFlags(Qt::FramelessWindowHint); 在任务栏上右键点击程序,不会弹出菜单,解决办法,使用下面代码: setWindowFlag ...

  2. 转:C++中引用传递与指针传递区别

    从概念上讲.指针从本质上讲就是存放变量地址的一个变量,在逻辑上是独立的,它可以被改变,包括其所指向的地址的改变和其指向的地址中所存放的数据的改变. 而引用是一个别名,它在逻辑上不是独立的,它的存在具有 ...

  3. 基于visual Studio2013解决C语言竞赛题之0202坐标转换

    题目

  4. Flash中用AS3做的游戏,导出apk安装到手机上滤镜效果出不来为什么?

    主要原因是,导出apk文件时渲染模式设置成了GPU.改掉就行了.

  5. A*算法(八数码问题)

    #include <iostream> #include <cstring> #include <vector> #include <cmath> #i ...

  6. Codeforces Round #253 (Div. 2), problem: (B)【字符串匹配】

    简易字符串匹配,题意不难 #include <stdio.h> #include <string.h> #include <math.h> #include < ...

  7. 基于visual Studio2013解决算法导论之053图的邻接表表示

     题目 图的邻接表表示 解决代码及点评 // 图的邻接表表示.cpp : 定义控制台应用程序的入口点. // #include <iostream> #include <sta ...

  8. 正态分布(Normal distribution)又名高斯分布(Gaussian distribution)

    正态分布(Normal distribution)又名高斯分布(Gaussian distribution),是一个在数学.物理及project等领域都很重要的概率分布,在统计学的很多方面有着重大的影 ...

  9. T-Sql中的pivot和unpivot

    写在前面 今天休息,抽空了解下pivot和unpivot,记得老师讲行转列的时候,貌似提到过,不过他说的最多的就是“这个你们私下可以自己学,很简单的...”,简单你咋不讲呢,不吐槽他了,还是好好整理下 ...

  10. Oracle中查询各种对象的方法小结

    --查看当前库中的所有表select * from all_tables a where a.table_name='INFOCODE_P20081'--查看表结构select * from all_ ...