UBUNTU G++编译器启用C++11标准

问题描述

UBUNTU G++编译器启用C++11标准

要让G++用C++11标准编译cpp文件,是不是需要
这么做$ g++ -std=c++11 test.cpp -o test
这么添加之后,需要每次都添加这句话吗 -std= c++11
还是只用添加一次,以后永远都是这个标准,直到再次遇到
改变,比如某一次你添加了这句-std=c++14
然后c++11标准就失效了,开始启用c++14

解决方案

每次都要添加的-std=c++11

或者试试在~/.bashrc中配置这条:

 alias g++="g++ -std=c++11"

解决方案二:

每次要加,所以Makefile才是你要学习的方向。

$ cat Makefile
CPPFLAGS = -std=c++11
...
...

时间: 2024-10-31 04:50:21

UBUNTU G++编译器启用C++11标准的相关文章

gcc/g++编译器和gdb调试器

gcc and g++分别是gnu的c & c++编译器 gcc/g++在执行编译工作的时候,总共需要4步 1.预处理,生成.i的文件[预处理器cpp]2.将预处理后的文件不转换成汇编语言,生成文件.s[编译器egcs]3.有汇编变为目标代码(机器代码)生成.o的文件[汇编器as]4.连接目标代码,生成可执行程序[链接器ld] [参数详解]-x language filename 设定文件所使用的语言,使后缀名无效,对以后的多个有效.也就是根据约定C语言的后缀名称是.c的,而C++的后缀名是.C

linux下安装或升级GCC 4.8以支持C++11标准

C++11标准在2011年8月份获得一致通过,这是自1998年后C++语言第一次大修订,对C++语言进行了改进和扩充.随后各编译器厂商都各自实现或部分实现了C++中的特性. 如需查看各编译器对C++11的支持程度,请参看文章: 本文主要介绍在Linux系统下,如何升级GCC以支持C++11.目前来看GCC是对C++11支持程度最高最多的编译器,但需要GCC4.8及以上版本. 本文使用操作系统:Centos 6.4 Desktop,64bit: 原GCC版本:4.4.7: 目标:升级GCC到4.8

802.11标准

802.11标准   2008     先有802.11b,<?XML:NAMESPACE PREFIX = ST1 />802.11a和802.11g,近来802.11e,802.11h和802.11n这三项新的协议应用. 802.11e:支持QOS 802.11e是IEEE推出的无线通用标准,它使企业,家庭和公共场所(如机场,饭店等)之间真正实现互通,而同时具有满足不同行业特殊需求的特性.与其他无线标准所不同的是,该标准在MAC物理层增加了服务质量(QoS)和对现有的802.11b和802

802.11标准是什么

IEEE 802.11是IEEE最初制定的一个无线局域网标准,主要用于解决办公室局域网和校园网中,用户与用户终端的无线接入,业务主要限于数据存取,速率最高只能达到2Mbps.由于802.11在速率和传输距离上都不能满足人们的需要,因此,IEEE小组又相继推出了802.11b和802.11a两个新标准.三者之间技术上的主要差别在于MAC子层和物理层. 虽然有人将Wi-Fi与802.11混为一谈,但两者并不一样.(见下文IEEE 802.11b) 历史 自第二次世界大战,无线通讯因在军事上应用的成果

802.11标准是什么?

  IEEE 802.11是IEEE最初制定的一个无线局域网标准,主要用于解决办公室局域网和校园网中,用户与用户终端的无线接入,业务主要限于数据存取,速率最高只能达到2Mbps.由于802.11在速率和传输距离上都不能满足人们的需要,因此,IEEE小组又相继推出了802.11b和802.11a两个新标准.三者之间技术上的主要差别在于MAC子层和物理层. 虽然有人将Wi-Fi与802.11混为一谈,但两者并不一样. 历史 自第二次世界大战,无线通讯因在军事上应用的成果而受到重视,无线通讯一直发展,

c++11标准库thread的问题

问题描述 c++11标准库thread的问题 上面的代码我是想实现简单的操作系统中的线程调度问题.可是出现这样的输出结果,这是为什么?我打印的字符串不是我对应数组中字符串,这和thread什么有关? 解决方案 我这里给每个线程分配的参数不知道为什么变成了一样的 解决方案二: 先看线程函数传递的参数是否都是一样的.然后就是线程函数中是否都是相同

《深入理解C++11:C++ 11新特性解析与应用》——第1章 新标准的诞生 1.1 曙光:C++11标准的诞生

第 1 章 新标准的诞生 从最初的代号C++0x到最终的名称C++11,C++的第二个真正意义上的标准姗姗来迟.可以想象,这个迟来的标准必定遭遇了许多的困难,而C++标准委员会应对这些困难的种种策略,则构成新的C++语言基因,我们可以从新的C++11标准中逐一体会.而客观上,这些基因也决定了C++11新特性的应用范畴.在本章中,我们会从设计思维和应用范畴两个维度对所有的C++11新特性进行分类,并依据这种分类对一些特性进行简单的介绍,从而一览C++11的全景. 1.1 曙光:C++11标准的诞生

c++-linux g++编译器处理枚举类型的问题

问题描述 linux g++编译器处理枚举类型的问题 简易代码如下 #include <iostream> enum MyEnum { F = 0, T = 1 }; bool juge(MyEnum x) { if (x == MyEnum::F) { return false; } else { return true; } } int main(int argc, char** argv) { MyEnum x = MyEnum::T; if (juge(x)) { std::cout

在Code::Blocks中使用C++11标准

刚刚在codeblocks中调试一个程序,发现默认并不支持C++11标准,因此有了报错. 其实解决方法很简单. 在你的当前工程,或者新建了工程后,选择选项卡中的"Setting",然后选择"Compiler". 如下图勾选上即可--