VS2010 C++ vector类型无法使用 新手求教

之前练习一个程序的时候用到了vector类,结果就出了问题,改成最简单的程序也没有用,不知到底哪儿出了问题:#include#includeusingnamespaces... 之前练习一个程序的时候用到了vector类,结果就出了问题,改成最简单的程序也没有用,不知到底哪儿出了问题:#include
#includeusing namespace std ;int main (){ vectora (5 ,2); cout << a; (这一行的“<<”显示了错误的波浪线)return 0 ;}
#include<iostream>
#include<vector>
using namespace std ;
int main ()
{
vector<int> a (5 ,2);
cout << a;
return 0 ;
}
展开
 我来答
ecrasyy
2014-02-17 · TA获得超过309个赞
知道小有建树答主
回答量:308
采纳率:0%
帮助的人:177万
展开全部

编译器已经提示你了,cout没有重载针对vector<int>类型的操作符<<

解决办法:

ostream& output_vector_int(const vector<int>& iv, ostream&os)
{
    for(size_t i = 0; i < iv.size(); ++i)
        os << iv[i] << " ";
    return os;
}

output_vector_int(a, cout);

 或者重载<<操作符

ostream& operator << (ostream& os, const vector<int>& iv)
{
    for(size_t i = 0; i < iv.size(); ++i)
        os << iv[i] << " ";
    return os;
}

cout << a;
追问
谢谢!那照这样的话,每次用到vector类的又需要输出的时候都要加这一段代码?
百度网友862b31c
2014-02-17 · TA获得超过1529个赞
知道小有建树答主
回答量:1045
采纳率:100%
帮助的人:822万
展开全部
不支持直接使用<<输入到vector里面。
你可以使用一个循环来依次为里面的元素赋值。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式