首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ostream_iterator宣言

ostream_iterator宣言
EN

Stack Overflow用户
提问于 2013-07-25 07:02:09
回答 2查看 4K关注 0票数 0

在编译以下简单程序(gcc Linux)时:

代码语言:javascript
复制
  1 #include <vector>
  2 #include <iostream>
  3 #include <iterator>
  4 #include <algorithm>
  5 using namespace std;
  6
  7 int main()
  8 {
  9         vector<int> numvec;
 10         istream_iterator<int> is;
 11         istream_iterator<int> eof;
 12         is=istream_iterator<int>(cin);
 13         copy(is, eof, back_inserter(numvec));
 14         cout << "Number of values inserted: " << numvec.size() << endl;
 15
 16         ostream_iterator<int> os;
 17         os=ostream_iterator<int>(cout);
 18         copy(numvec.begin(), numvec.end(), os);
 19
 20 }

我得到了以下错误:

代码语言:javascript
复制
line 16: error: no matching function for call to 
'std::ostream_iterator<int, char, std::char_traits<char> >::ostream_iterator()'

难道不可能只声明ostream_iterator而不定义它吗?istream_iterator就是这种情况(第10和第11行)。为什么它不适用于ostream_iterator?

谢谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-07-25 07:15:40

空参数列表的迭代器没有可用的构造函数。

ostream_iterator需要一个basic_ostream<charT,traits>&

然而,迭代器有一个带有空参数列表的构造函数,该构造函数标记流结束。

代码语言:javascript
复制
  #include <vector>
  #include <iostream>
  #include <iterator>
  #include <algorithm>
  using namespace std;


  int main()
  {
          vector<int> numvec;
          istream_iterator<int> is;
          istream_iterator<int> eof;
          is=istream_iterator<int> (cin);
          copy(is, eof, back_inserter(numvec));
          cout << "Number of values inserted: " << numvec.size() << endl;

          ostream_iterator<int> os(cout);
          os=ostream_iterator<int>(cout); // Not required !

          copy(numvec.begin(), numvec.end(), os);

  }
票数 2
EN

Stack Overflow用户

发布于 2013-07-25 07:09:02

只要把它改成

代码语言:javascript
复制
16         ostream_iterator<int> os(cout);
18         copy(numvec.begin(), numvec.end(), os);

第17行被删除.

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17851166

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档