处理VS2010+qt4.8.6下编译不报错误,而Linux下报错:error: 'nullptr' was not declared in this scope

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/xumingyifrend/article/details/86234702

今天处理一个同事在VS2010+qt4.8.6下编写的程序(能够正确编译并运行)

我需要将这个程序移植到arm板上,于是在Linux下对此程序进行交叉编译

于是,问题来了

这个错误提示是:nullptr在当前作用域没有被声明。

稍作分析,这个nullptr并不是程序定义的,而是C++11引入的关键字。

因此想到这个编译器可能没有支持C++11。

于是开始找度娘,最好是能够通过简单的代码加载C++11的支持

使用nullptr时,要添加对C++11的支持,

在.pro文件中添加QMAKE_CXXFLAGS += -std=c++0x即可

当然,更简单的方法就是不要加nullptr,用0来替换,如下

OK,上面的两种方法均能顺利通过编译

欢迎大家指教,希望大家喜欢

路漫漫其修远兮,同志仍须努力

猜你喜欢

转载自blog.csdn.net/xumingyifrend/article/details/86234702