C++主流编译器整理(编译器版本--供应商--C++11支持情况)
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苹果系统)
- 或者在Mac OSX系统上,推荐使用GCC
(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支持情况)的更多相关文章
- 目前主流编译器对C++11特性的支持情况
目前主流编译器对C++11特性的支持情况 1. GCC编译器(从编译器GCC4.8.X的版本完全支持) (1)目前C++11特性,之前成为C++0X特性,从GCC4.3的后续版本中逐步对C++11进行 ...
- 【转】预编译头文件来自编译器的早期版本,或者预编译头为 C++ 而在 C 中使用它(或相反)
用VC++ 2008 编写C语言程序,编译出现错误: 预编译头文件来自编译器的早期版本,或者预编译头为 C++ 而在 C 中使用它(或相反) 解决方法: 建工程时 建立空项目 或者在项目设置里关闭预编 ...
- VS2005 MFC 预编译头文件来自编译器的早期版本,或者预编译头为 C++ 而在 C 中使用它(或相反)
当 Visual C++ 项目启用了预编译头 (Precompiled header) 功能时,如果项目中同时混合有 .c 和 .cpp 源文件,则可能收到 C1853 编译器错误:fatal err ...
- 预编译头文件来自编译器的早期版本,或者预编译头为 C++ 而在 C 中使用它(或相反)(转)
用VC++ 2008 编写C语言程序,编译出现错误: 预编译头文件来自编译器的早期版本,或者预编译头为 C++ 而在 C 中使用它(或相反) 解决方法: 建工程时 建立空项目 或者在项目设置里关闭预编 ...
- 预编译头文件来自编译器的早期版本,或者预编译头为 C++ 而在 C 中使用它(或相反)转
vs2010的mfc项目中编译c语言出现错误: "...预编译头文件来自编译器的早期版本,或者预编译头为 C++ 而在 C 中使用它(或相反)" 解决方法: 建工程时 建立空项目 ...
- 【VS开发】fatal error C1853: "Debug\sift.pch"预编译头文件来自编译器的早期版本
fatal error C1853: "Debug\sift.pch"预编译头文件来自编译器的早期版本 <pre id="best-content-12991040 ...
- 目前国内外主流的linux发行版本
1.linux其实是基于unix发展而来的,还有mac os也是类unix操作系统 2.目前主流的linux发行版本主要有:红帽系列(中国大陆,美洲地区,发源于美国),suse系列(欧洲地区流行,发源 ...
- VS2010编译器工具cl对c++11标准支持情况測试
本文探讨了VS2010编译工具cl对C++11标准的支持情况.提供了利用C++11新特性的两段代码来进行測试,并同g++ 4.9.3编译器的编译情况相对照.总的说来:VS2010的编译器工具cl部分支 ...
- 让旧版本的 Flash IDE 支持更新的 Flash Player/AIR 功能
转载:https://blog.zengrong.net/post/1568.html 让旧版本的 Flash IDE 支持更新的 Flash Player/AIR 功能 今天在论坛上看到一篇文章:H ...
随机推荐
- 吴裕雄 数据挖掘与分析案例实战(5)——python数据可视化
# 饼图的绘制# 导入第三方模块import matplotlibimport matplotlib.pyplot as plt plt.rcParams['font.sans-serif']=['S ...
- gtftools软件简单介绍(我自己不建议用,因为我发现不好用)
1)背景 生物信息学研究经常涉及计算或提取基因的各种特征,如基因ID作图,GC含量计算和不同类型的基因长度,通过操纵基因模型,这些模型通常以GTF格式注释,可从ENSEMBL或GENCODE数据库获得 ...
- 工作流和过程自动化框架 Camunda BPM
Camunda BPM 是一个灵活的工作流和过程自动化框架,它的核心是一个在Java虚拟机内部运行的原生BPMN 2.0流程引擎,因此它可以嵌入到任何Java应用程序或运行时容器中.Camunda B ...
- redis安装和命令使用
前言: redis是一个key-value的存储系统,value支持string.list.set.zset.hash五种类型,且支持数据的本地存储 一.安装redis 前提:linux下需要安装 ...
- Java的indexOf返回的是第一个匹配到的字符的索引位置,substring(a,b)获得字符串的一部分内容
背景:我要实现一个功能,需要匹配两个字符串是否有相同的字符,所以就写了下面一个小方法,定义两个字符串a和b,循环遍历 b,如果a中有b的子串就将匹配数量num+1 遇到的问题:开始判断字符串中是否 ...
- Mo2C-tag
记者今天从中国科学院金属研究所获悉,该所沈阳材料科学国家(联合)实验室先进炭材料研究部任文才研究组在大尺寸高质量二维过渡族金属碳化物晶体的制备与物性研究方面取得了重要突破.相关成果日前在<自然— ...
- X_PU
通俗易懂告诉你CPU/GPU/TPU/NPU...XPU都是些什么鬼?[附把妹秘籍] 2017-10-27 19:54移动芯片/谷歌 作者:iot101君 物联网智库 原创 转载请注明来源和出处 现在 ...
- discrete
discrete - 必应词典 美[dɪ'skrit]英[dɪ'skriːt] adj.离散的:分离的:各别的 网络不连续的:分立的:离散型
- PHP的zip、unzip类详解
1.打开一个ZIP包,用于读取.写入或修改 open(string $filename [, int $flags]) $filename - 文件名 $flags - 打开模式 ZIPARCHIVE ...
- python使用ip代理抓取网页
在抓取一个网站的信息时,如果我们进行频繁的访问,就很有可能被网站检测到而被屏蔽,解决这个问题的方法就是使用ip代理 .在我们接入因特网进行上网时,我们的电脑都会被分配一个全球唯一地ip地址供我们使用, ...