又学一招!二维向量vector<vector<int>>在VC下的使用技巧。

又学一招!二维向量vector<vector<int>>在VC下的使用技巧。

随着对c++学习的逐步加深, 发现STL确实是个好咚咚。vector是我用到的第一个STL容器,它一直吸引我学习和使用STL。但当我用到二维的vector时(比如 vector<vector<int>>),却发现似乎不能用。我用的VC6就是不认它,竟报“error C2146: syntax error : missing ',' before identifier”。凭直觉,我觉得这不应该。网上一搜,类似这样的用法的代码比比皆是。看来是VC6太弱了,竟然不理解 vector<vector<int>>为何物!无奈之下只能暂时放弃,另谋它途。然而一直耿耿于怀。

今天为了写一个算法,又要用到二维向量。这次决定追根究底。搜索了大半天,所有相关的文章、帖子都仔细地看了,终于在一个讨论“error C2653: 'std' : is not a class or namespace name”的问题的帖子中找到了答案。

那位达人说要在VC中用二维向量唯一的解决之道就是把它写成以下形式:

vector < vector < int > >

经过测试,把换成空格也可以,也就是只要不影响词法语法,最后两个 ' > ' 之间添加上一些东东把它们分开即可。

为什么VC中要这样,而其他编译器中就不用?原因还未知。难道是">>"运算符的优先级高的缘故?这就不得而知了。
反正终于可以用二维向量甚至多维向量了,心中欣喜之情难于表达,还哪有心思去追究原因啊。哈哈。且留待来日考究吧。如果哪位达人知道,还请不吝赐教!
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值