linux如何查看编译器支持的C++版本(支持C++11、支持C++14、支持C++17、支持C++20)(编译时不指定g++版本,默认使用老版本编译)

news2024/9/21 16:36:14

文章目录

    • C++各个版本
      • C++11
      • C++14
      • C++17
      • C++20
    • 查看自己的编译器支持C++哪个版本
    • 注意:编译时不指定g++版本,默认使用老版本编译(存疑)

C++各个版本

C++11

C++11是一个重要的C++标准版本,于2011年发布。C++11带来了许多重要的改进,包括:

  • 智能指针:引入了shared_ptr和unique_ptr等智能指针,用于更好地管理动态内存分配。
  • 新的循环语句:引入了for循环中的范围语法,以更简洁的方式遍历容器。
  • 初始化列表:允许使用初始化列表来初始化数组和结构体等数据结构。
  • Lambda表达式:允许在代码中直接创建匿名函数。
  • 多线程:引入了多线程库,用于简化多线程编程。

C++14

C++14:是C++11的一个小范围修订版本,于2014年发布,主要包括:

  • 增加了对可变参数的支持。
  • 增加了对类型推导的支持。
  • 提高了constexpr函数的限制。

C++17

C++17:是C++14的一个较大范围修订版本,于2017年发布,其中一些重要的改进包括:

  • 增加了新的文件系统库。
  • 支持了构造函数的默认参数。
  • 支持了结构体包含,简化了结构体的初始化。
  • 增加了对并行编程的支持。

C++20

C++20:是C++17的一个较大范围修订版本,于2020年发布,其中一些重要的改进包括:

  • 引入了模板参数推导。
  • 引入了协同程序,以简化异步编程。
  • 引入了模板类型推导,以简化模板编程。
  • 支持了关键字import,以简化模块的导入。

查看自己的编译器支持C++哪个版本

(浪潮服务器ubuntu20.04 gcc9.4.0)

  • 例如,检查是否支持C++11
g++ -std=c++11 -E - < /dev/null

这行代码是使用g++编译器来编译一段简单的C++代码,以检查您的系统是否支持C++11。
其中,-std=c++11选项告诉编译器使用C++11标准编译代码。
-E选项告诉编译器只进行预处理,而不进行编译和链接步骤。
最后,- < /dev/null表示将标准输入重定向到/dev/null,以便编译器不必读取任何输入。
如果命令行没有输出,则说明您的系统支持C++11。如果输出了错误信息,则说明您的系统不支持C++11。

在这里插入图片描述

  • 检查是否支持C++14
g++ -std=c++14 -E - < /dev/null

在这里插入图片描述

  • 检查是否支持C++17
g++ -std=c++17 -E - < /dev/null

在这里插入图片描述

  • 检查是否支持C++20(注意20要写成2a)
g++ -std=c++2a -E - < /dev/null

在这里插入图片描述

上面都是支持情况的打印,如果不支持,会提示什么呢?

(136盒子 ubuntu16.04 gcc5.4.0)
在这里插入图片描述

如图,这个环境不支持C++20

注意:编译时不指定g++版本,默认使用老版本编译(存疑)

如果在编译时不指定C++的版本,那么g++编译器会使用默认的C++版本。
一般情况下,默认的C++版本可能是比较老的版本,例如C++98或C++03。
因此,如果需要使用新的C++特性,比如C++11或C++14,最好明确指定版本。

但是具体默认使用哪个老版本编译,我一时半会找不到查看的方法。。。。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/343413.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

vue3封装数值动态递增组件

vue3封装数值动态递增组件前言源码举个例子&#xff1a;前言 1&#xff09;使用技术&#xff1a; vue3.2 Ts 2&#xff09;组件接收参数&#xff1a; 参数类型意义是否可选valuenumber数值大小必填durationnumber递增动画持续时间&#xff08;单位&#xff1a;s&#xff09;…

PyTorch学习笔记

PyTorch学习笔记&#xff08;一&#xff09;&#xff1a;PyTorch环境安装 往期学习资料推荐&#xff1a; 1.Pytorch实战笔记_GoAI的博客-CSDN博客 2.Pytorch入门教程_GoAI的博客-CSDN博客 安装参考&#xff1a; 1.视频教程&#xff1a;3分钟深度学习【环境搭建】CUDA Anacon…

javascript测试二

一、 选择题&#xff08;共10题&#xff0c;每题2分&#xff09;1、在JavaScript中&#xff0c;想要一次跳出方法的多层循环结构需要用&#xff08;C &#xff09; A) breakB) continueC) returnD) false2、 下列关于嵌套循环以下说法正确的一项是(A )。A) 每一种循环结构内部也…

Elipse报错:Failed to load the JNI shared library jvm.dll解决方法

情景 导入Elipse的项目中有jar包和64位版本的JDK不兼容。 于是我安装了32位版本的JDK。 配置好系统环境后&#xff0c;重启Eclipse却遇到了这个问题。 原因 搜索后了解到&#xff0c;是因为Eclipse版本与JDK版本不匹配。 我的Eclipse是64位的&#xff0c;但JDK配置是32位的…

科技云报道:2023年,可观测性迎来哪些新趋势?

科技云报道原创。 可观测性不是一个新鲜的名词&#xff0c;但是近年来随着云原生技术的发展&#xff0c;在带来效率、可用性提升的同时也增加了复杂度&#xff0c;而可观测性成为降低这种复杂度的唯一手段&#xff0c;因此被推到了前所未有的重要地位。 Gartner将应用可观测…

前端面试常考 | 浅拷贝与深拷贝

文章目录一. 前言1. 概述2. 数据类型3. 存储区别二. 深浅拷贝1.深浅拷贝的定义2. 基本数据类型的拷贝3. 引用类型的拷贝4. 实现 “浅” 拷贝1. Object.assign()2. slice()3. concat()方法4. es6展开运算符5. 实现 “深” 拷贝1. JSON.parse(JSON.stringify(obj))2. lodash3. 递…

ASEMI代理FGH60N60,安森美FGH60N60车规级IGBT

编辑-Z 安森美FGH60N60车规级IGBT参数&#xff1a; 型号&#xff1a;FGH60N60 集电极到发射极电压&#xff08;VCES&#xff09;&#xff1a;600V 栅极到发射极电压&#xff08;VGES&#xff09;&#xff1a;20V 收集器电流&#xff08;IC&#xff09;&#xff1a;120A 二…

2023年1月国产数据库大事记-墨天轮

本文为墨天轮社区整理的2023年1月国产数据库大事件和重要产品发布消息。 目录 1月国产数据库大事记&#xff08;时间线&#xff09;产品/版本发布兼容认证排行榜新增数据库厂商活动相关资料 1月国产数据库大事记&#xff08;时间线&#xff09; 1月6日消息&#xff0c;近日…

将小程序代码转成uni-app代码

最近因为公司项目原因需要将小程序的项目转换成uni—app的项目&#xff0c;所以总结了以下几点&#xff1a; 首先你可以先到uni-app的官网简单看一下对它的介绍&#xff0c;本次文章的介绍是针对简单的微信小程序来进行的转化。 在这之前我们来看一下目录对比 下面就来介绍一下…

Python绝对路径和相对路径详解

在介绍绝对路径和相对路径之前&#xff0c;先要了解一下什么是当前工作目录。什么是当前工作目录每个运行在计算机上的程序&#xff0c;都有一个“当前工作目录”&#xff08;或 cwd&#xff09;。所有没有从根文件夹开始的文件名或路径&#xff0c;都假定在当前工作目录下。注…

怎么编写PCIe设备驱动程序

怎么编写PCIe设备驱动程序 文章目录怎么编写PCIe设备驱动程序参考内核文件&#xff1a;一、 PCI总线设备驱动模型二、 获得PCIe设备的资源2.1 获得内存/IO空间2.2 获得中断号2.2.1 获得INTx中断号2.2.2 获得MSI-X/MSI中断号三、 使能设备致谢参考内核文件&#xff1a; Documen…

智慧税务+数据可视化:企业财务管理告别难题

一、引言在发展社会主义市场经济的过程中&#xff0c;税收承担着组织财政收入、调控经济、调节社会分配的职能。中国每年财政收入的90%以上来自税收&#xff0c;其地位和作用越来越重要&#xff0c;可称之为国家经济的“晴雨表”&#xff0c;有效进行税务管理、充分挖掘税务大数…

秒杀项目之商品秒杀接口测压及优化

目录一、生成测试用户二、jmeter压测2.1 测试三、秒杀接口优化3.1 优化第一步&#xff1a;解决超卖3.2 优化第二步&#xff1a;Redis重复抢购3.3 优化第三步&#xff1a;Redis预减库存3.3.1 商品初始化3.3.2 预减库存一、生成测试用户 将UserUtils工具类导入到zmall-user模块中…

【自然语言处理】【大模型】用于大型Transformer的8-bit矩阵乘法介绍

用于大型Transformer的8-bit矩阵乘法介绍原文地址&#xff1a;A Gentle Introduction to 8-bit Matrix Multiplication for transformers at scale using transformers, accelerate and bitsandbytes 相关博客 【自然语言处理】【大模型】用于大型Transformer的8-bit矩阵乘法介…

产品经理必看的高效产品文档撰写指南

对于企业来说&#xff0c;如何推广自己的产品是一个非常重要的话题&#xff0c;而其中必要的就是创建企业产品宣传册&#xff0c;这对于产品宣传非常重要&#xff0c;尤其是一些大公司&#xff0c;非常重视这种产品展示方式。因为它可以更完整地展现产品&#xff0c;撰写一份合…

uart 子系统

串口硬件储备知识&#xff1a; uart 在Linux 应用层的体现及使用 uart 就是串口&#xff0c;它也是属于字符设备中的一种&#xff0c;众所周知 字符设备都会在/dev/ 目录下创建节点&#xff0c;串口所创建的节点名都是以tty* 为开头&#xff0c;例如下面这些节点&#xff1a…

GeekChallenge

2.GeekChallenge 1.web 1.朋友的学妹 url&#xff1a;http://49.234.224.119:7413/ 右键点击查看源码&#xff0c;找到flagU1lDe0YxQF80c19oNExwZnVsbGxsbGx9 然后base64解码得到SYC{F1_4s_h4Lpfullllll} 2.EZwww url&#xff1a;http://47.100.46.169:3901/ 根据网站提示…

备战蓝桥杯【高精度乘法和高精度除法】

&#x1f339;作者:云小逸 &#x1f4dd;个人主页:云小逸的主页 &#x1f4dd;Github:云小逸的Github &#x1f91f;motto:要敢于一个人默默的面对自己&#xff0c;强大自己才是核心。不要等到什么都没有了&#xff0c;才下定决心去做。种一颗树&#xff0c;最好的时间是十年前…

一步一步动手实现CANoe例程

最近在学习CANoe&#xff0c;记录下学习路程&#xff0c;方便后续查看。参考《CANoe开发从入门到精通》和CANoe软件内附带的Easy例程&#xff0c;一步步去实现这个例程&#xff0c;稍加优化。 一、创建仿真工程 打开CANoe 16 SP4进入主界面&#xff0c;单击File→New可以看到…

2022年Q4业绩超预期,功能性饮料能成为百事下一增长极吗?

北京时间2月9日&#xff0c;美国食品饮料巨头百事公司发布2022财年年报&#xff0c;第四季度业绩再超预期。 据百事公司财报显示&#xff0c;其2022年Q4实现营收280亿美元&#xff0c;市场预期为268.8亿美元&#xff1b;核心每股收益为1.67美元&#xff0c;市场预期为1.64美元…