G++ 编译时出现了奇怪的错误,windows下编译没有

发布于 2021-11-28 02:55:39 字数 206 浏览 693 评论 3

这是两段代码,只差一个空格,却一个编译通过,一个就报了异常,真心求教

map<int, vector<int>> mapNeed;//报错,变量未声明

map<int, vector<int> > mapNeed;//编译通过

运行环境:Centos

编译器:g++

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

夜司空 2021-12-01 21:51:44

引用来自“liuyong051”的评论

map<int, vector<int>> 的两个右尖括号(>>),在较低版本的编译器里,被识别为 移位运算符, 所以将出现编译错误。在较高版本的编译器里,编译器已经足够智能,能够进行正确的识别。

你的g++的版本应该比较低,或者没有使用 -std=c++0x 开关。

遇到这种情况,就老老实实的加个空格。

画骨成沙 2021-11-30 07:46:07

语法要求,好好看看C++ primer

梅窗月明清似水 2021-11-29 18:02:55

map<int, vector<int>> 的两个右尖括号(>>),在较低版本的编译器里,被识别为 移位运算符, 所以将出现编译错误。在较高版本的编译器里,编译器已经足够智能,能够进行正确的识别。

你的g++的版本应该比较低,或者没有使用 -std=c++0x 开关。

遇到这种情况,就老老实实的加个空格。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文