在linux中编译关于bag程序,结果一直报错,程序写的没有问题
![](https://i-blog.csdnimg.cn/blog_migrate/1a774c5a036b22c252958570e440021a.png)
对照官方文档重写了for语句,还是报错warning: range-based ‘for’ loops only available with -std=c++11 or -std=gnu++11,其实上面的其他错误也是这一个引起的,最后尝试发现问题是没有添加-std=c++11
![](https://i-blog.csdnimg.cn/blog_migrate/1f0597c670ecaa4d03ad8017f76fcfb2.png)
最后尝试发现问题是没有添加-std=c++11
解决:
(1)在同一个src下打开CMakelists.txt
![](https://i-blog.csdnimg.cn/blog_migrate/b1e1942e18fb7ca78e404581c57f3b77.png)
(2) 第 5 行 取消注释,add_compile_options(-std=c++11)
![](https://i-blog.csdnimg.cn/blog_migrate/c7f72ec86d2f3194ef5e04144559c582.png)
(3)改完后重新编译就不会报错了(改为原来按照老师视频里面的程序)
![](https://i-blog.csdnimg.cn/blog_migrate/5ce564ca416abdeaf3e5af6a3eee1ad4.png)
记得,记得,记得!!!(总是忘记这种报错怎么解决)