C++标准  

年份 C++标准                俗称   备注
2011 ISO/IEC 14882:2011     C++11  第三个C++标准
2007 ISO/IEC TR 19768:2007  C++TR1 标准化委员会的草案文件
2003 ISO/IEC 14882:2003     C++03  第二个C++标准
1998 ISO/IEC 14882:1998     C++98  第一个C++标准

C99,是C语言标准。

  GCC正在取代Clang成为C++11支持最佳的编译器,而Visual Studio在对C++11特性的支持上也有明显的改进,特别是新增对variadic templates、 initializer lists以及raw literals的支持。当然这些支持中那些属于完全支持,哪些是无bug的支持不得而知,需要开发者自己去体验。”以后也不会有编译器的对c++11完全的支持,都是支持大部分,就连c++98也没有编译器是完全支持的


  • C++98标准中:支持STL中的:vector,dequeue, list, set, map(STL中首批数据结构)
  • C++11标准中:支持STL中的array, forward_list, unordered容器(STL后续新增数据结构)

C++主流编译器

(1)GCC编译器

  其供应商是GNU,开源项目。

  •   是在Linux设备生,或者大多数的Unix-like系统。包括SunOS
  •   或者在Win系统上(采用Cygwin或者MinGW)
      •   或者在Mac OSX系统上,推荐使用GCC  

        其中

        支持 C++11标准:  GCC4.6以上   Clang3.0以上(ios苹果系统)

(2)msvc编译器

  其供应商,树妖用在Microsoft Visual C++ ,以及其IDE VS 上。

  _MSC_VER是MSVC编译器的内置宏,定义了编译器的版本,_MSC_VER 值对应版本关系

  

   往往在Boost库中在跨平台(编译器)方面,通过是否判定有无“—MSC—VER”定义,则判定是否是VSVC编译器

  在VS版本上对应的编译器版本如下。

  •   msvc12.0   VisualStudio2010, VisualStudio2013 
  •   msvc10.0   VisualStudio2010
  •   msvc9.0     VisualStudio2008
  •   msvc8.0     VisualStudio2005
  •   msvc7.1   Visual Studio .NET 2003—7.1
  •   msvc7.0   Visual Studio .NET—7.0
  •   msvc7.0   Visual Studio 6.0, Service Pack 5—6.5

(3)Intel C++ 编译

  对于Window系统,有intel-win编译器

  对于Linux系统,有intel-linux编译器

(4)HP aC++ 编译器

  对于HP-UX系统, 采用acc编译器

(5)Borland C++ 编译器

  在Microsoft Win系统上,可以采用C++ Builder 2006 C++编译器。对应的borland模块。

  •   Boland 5.8.2  C++ Builder 2006
  •   Boland 5.6.5, 5.6.4 (depending on release)  CBuilderX
  •   Boland 5.6.4  CBuilder6
  •   Boland 5.5.1  Free command line tools

(6)Comeau C/C++编译器

  对于Window系统,有come-win编译器

  对于Linux系统,有come-linux编译器

(7)Code Warrior 编译器

  编译器:CW

(8)Digital Mars C/C++ Compiler

  编译器:DMC

(9)HP C++ Compiler

  对于Tru64 Unix系统,采用hp_cxx模块

(10)Sun Studio C++编译器

  对于SolarisOS 操作系统,采用sun编译器

(11)IBM Visual Age C++ Compiler

  对于AIX operating system系统,采用vacpp

end;

C++主流编译器整理(编译器版本--供应商--C++11支持情况)的更多相关文章

  1. 目前主流编译器对C++11特性的支持情况

    目前主流编译器对C++11特性的支持情况 1. GCC编译器(从编译器GCC4.8.X的版本完全支持) (1)目前C++11特性,之前成为C++0X特性,从GCC4.3的后续版本中逐步对C++11进行 ...

  2. 【转】预编译头文件来自编译器的早期版本,或者预编译头为 C++ 而在 C 中使用它(或相反)

    用VC++ 2008 编写C语言程序,编译出现错误: 预编译头文件来自编译器的早期版本,或者预编译头为 C++ 而在 C 中使用它(或相反) 解决方法: 建工程时 建立空项目 或者在项目设置里关闭预编 ...

  3. VS2005 MFC 预编译头文件来自编译器的早期版本,或者预编译头为 C++ 而在 C 中使用它(或相反)

    当 Visual C++ 项目启用了预编译头 (Precompiled header) 功能时,如果项目中同时混合有 .c 和 .cpp 源文件,则可能收到 C1853 编译器错误:fatal err ...

  4. 预编译头文件来自编译器的早期版本,或者预编译头为 C++ 而在 C 中使用它(或相反)(转)

    用VC++ 2008 编写C语言程序,编译出现错误: 预编译头文件来自编译器的早期版本,或者预编译头为 C++ 而在 C 中使用它(或相反) 解决方法: 建工程时 建立空项目 或者在项目设置里关闭预编 ...

  5. 预编译头文件来自编译器的早期版本,或者预编译头为 C++ 而在 C 中使用它(或相反)转

    vs2010的mfc项目中编译c语言出现错误: "...预编译头文件来自编译器的早期版本,或者预编译头为 C++ 而在 C 中使用它(或相反)" 解决方法: 建工程时 建立空项目  ...

  6. 【VS开发】fatal error C1853: "Debug\sift.pch"预编译头文件来自编译器的早期版本

    fatal error C1853: "Debug\sift.pch"预编译头文件来自编译器的早期版本 <pre id="best-content-12991040 ...

  7. 目前国内外主流的linux发行版本

    1.linux其实是基于unix发展而来的,还有mac os也是类unix操作系统 2.目前主流的linux发行版本主要有:红帽系列(中国大陆,美洲地区,发源于美国),suse系列(欧洲地区流行,发源 ...

  8. VS2010编译器工具cl对c++11标准支持情况測试

    本文探讨了VS2010编译工具cl对C++11标准的支持情况.提供了利用C++11新特性的两段代码来进行測试,并同g++ 4.9.3编译器的编译情况相对照.总的说来:VS2010的编译器工具cl部分支 ...

  9. 让旧版本的 Flash IDE 支持更新的 Flash Player/AIR 功能

    转载:https://blog.zengrong.net/post/1568.html 让旧版本的 Flash IDE 支持更新的 Flash Player/AIR 功能 今天在论坛上看到一篇文章:H ...

随机推荐

  1. one by one 项目 part 3

    mysql error:Table 'performance_schema.session_variables' doesn't exist 打开cmd 输入:mysql_upgrade -u roo ...

  2. org.springframework.stereotype 注解

    org.springframework.stereotype 1.@controller 控制器(注入服务) 2.@service 服务(注入dao) 3.@repository dao(实现dao访 ...

  3. maven tomcat7 远程热部署

    在maven项目开发中,一般推荐使用jetty进行开发调试.但是在项目发布的时候要求使用tomcat7作为发布服务器,为此在maven中配置了tomcat7插件,以支持项目在外部tomcat7进行远程 ...

  4. Java获取资源文件

    比如我们有以下目录 |--project |--src |--javaapplication |--Test.java |--file1.txt |--file2.txt |--build |--ja ...

  5. Spring Boot中使用Websocket搭建即时聊天系统

    1.首先在pom文件中引入Webscoekt的依赖 <!-- websocket依赖 --> <dependency> <groupId>org.springfra ...

  6. django做form表单的数据验证

    我们之前写的代码都没有对前端input框输入的数据做验证,我们今天来看下,如果做form表单的数据的验证 在views文件做验证 首先用文字描述一下流程 1.在views文件中导入forms模块 2. ...

  7. 我的UI启蒙之路

    为什么叫UI启蒙之路呢? 我没有学过美术,也不懂设计,但是有的时候也许就是一种命中注定吧,让我知道了UI,并且一发不可收拾的爱上了它. 具体情况是这样的: 我毕业于电力学校,是一名不折不扣的工科生,专 ...

  8. bat 调用exe

    @set errorlevel=>nul :reInput @echo 请输入批次号: @set/p 批次号= >nul @set 批次号|findstr "\\<%sea ...

  9. AMD、CMD、UMD 模块的写法

    简介 最近几年,我们可以选择的Javascript组件的生态系统一直在稳步增长.虽然陡增的选择范围是极好的,但当组件混合匹配使用时就会出现很尴尬的局面.开发新手们会很快发现不是所有组件都能彼此“和平相 ...

  10. div添加滚动条常见属性

    由于页面上的表里的末一列的内容太多,显示的内容不美观了,就想在这一列上加滚动条,在网上搜了一下,用div可以实现,感觉还不错,下面的是在网上查到的.  想在div里添加滚动条设置一下style就ok了 ...