c++ - Cloud 9编译c++98,需要c++11
问题描述
我正在尝试编译一个使用基于范围的 for 循环的程序,以及仅在 c++11 及更高版本中可用的其他几个功能。当我尝试在终端中使用 makefile 编译程序时,出现以下错误:
error: range-based ‘for’ loops are not allowed in C++98 mode
和一些警告:
warning: extended initializer lists only available with -std=c++11 or -std=gnu++11 [enabled by default]
令人讨厌的是,这曾经发生过,但它自己解决了。然而,这一次并没有自行解决。
这是我的生成文件:
main: main.o
g++5 -std=c++11 -Wall -Werror -g *.cpp -o lab4
以下是我尝试在 makefile 中更改但没有成功的一些示例。
g++-5 -std=c++11 -Wall -Werror -g *.cpp -o lab4
g++5 -std=gnu++11 -Wall -Werror -g *.cpp -o lab4
g++5 -std=c++0x -Wall -Werror -g *.cpp -o lab4
g++ -std=c++11 -Wall -Werror -g *.cpp -o lab4
g++ -std=gnu++11 -Wall -Werror -g *.cpp -o lab4
前面的所有示例都会导致类似的警告和错误。我能做些什么来解决这个问题?
解决方案
推荐阅读
- javascript - 使用 Reduce 方法在 JavaScript 中反转字符串
- python - Python:当变量被类方法调用时,对象变量存在“NameError”
- mysql - 调用过程时语句不完整
- multiprocessing - 预定义元组数组
- node.js - express 项目在服务器上运行但无法得到任何响应
- python - 为什么我在这个插入排序算法中过度计算了比较的数量?
- python - Matplotlib 自定义标记/符号
- javascript - 登录后 Firebase 身份验证重定向到空白页面
- excel - 使用多个项目参数从 Excel 创建 Revit Sheets
- javascript - 如何根据某人从 datepicker 中选择的日期显示某些可用时间?