关闭

vector 类型输出的一个问题

标签: c++
186人阅读 评论(0) 收藏 举报
分类:

刚学c++,运行以下程序:

#include <iostream>

#include <vector>

#include <string>

using namespacestd;

int main()

{

       vector<int>ivec;

       for(vector<int>::size_type ix=0;ix!=10;++ix)

              ivec.push_back(ix);

       std::cout<<ivec<<std::endl;

       return 0;

}

运行程序,提示错误:          rrorC2679: 二进制“<<: 没有找到接受“std::vector<_Ty>”类型的右操作数的运算符(或没有可接受的转换)

找了好久,才找到错误根源:  ivec是一个vector<int> 类型的,不能一次性输出,只能一个一个输出。类似于数组一样。


修改后程序:

#include <iostream>

#include <vector>

#include <string>

using namespace std;

int main()

{

       vector<int> ivec;

       for(vector<int>::size_typeix=0;ix!=10;++ix)

              ivec.push_back(ix);

for(vector<int>::iterator j=ivec.begin();j!=ivec.end();++j)

       cout<<*j<<"";

cout<<endl;

       return 0;

}

运行正常。

所以说:基础不牢,地动山摇!


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:846次
    • 积分:64
    • 等级:
    • 排名:千里之外
    • 原创:5篇
    • 转载:0篇
    • 译文:0篇
    • 评论:1条
    文章分类
    文章存档