解决Qt中GCC支持C++11标准问题

1 篇文章 0 订阅

想必看到这篇博客的人都是奔着问题来的,所以这里就不做关于什么是GCC、C++11的介绍了。

1、什么是C++0x

C++0x是C++最新标准标准化过程中的曾用名,在这一系列文章中我们将介绍最新标准添加的一系列新的语言特性。在2011年9月份,C++0x正式由官方发布并命名C++11,现在很多编译器已经支持了部分C++11特性。

C++11包括大量的新特性:主要特征像lambda表达式和移动语义,实用的类型推导关键字auto,更简单的容器遍历方法,和大量使模板更容易使用的改进。这一系列教程将包含所以以上特性。

2、解决支持C++11的设置方法

(1)第一种方法

直接在源程序的第一行添加如下代码:

#pragma GCC diagnostic error "-std=c++11"  

可以通过一个小示例代码测试test.cpp,例如:

#pragma GCC diagnostic error "-std=c++11"  
#include <iostream>  
using namespace std;  
int main(int argc,char **argv)  
{  
    cout<<"hello world!"<<endl;  
	int arry[5]={6,8,9,5,7};
	for(int i:arry)
	{
		cout<<arry[i]<<endl;
	} 
    return 0;  
}

然后在终端只需输入

g++ test.cpp -o ts  //编译
./ts  //运行

(2)第二种方法,取别名

alias g++='g++ -std=c++11'  //取别名
g++ test.cpp -o ts  //编译
./ts  //运行

3、QtCreator支持C++11的设置方法

以上两个方法都是在终端进行输入命令进行编译的,但在类似Qt这样的编辑器中,如何才能使g++支持C++11呢,这里给出一行代码,添加在Qt的.pro文件中即可

QMAKE_CXXFLAGS += -std=c++0x (Qt 4.7)
CONFIG +=C++11 (Qt5)

 

 

 

 

 

 

 

 

 

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值