ostream iterator

ostream iterator1.ostream_iteratortemplate         class_CharT=char,class_Traits=char_traits>classostream_iterator{public: typedef_CharT                        char_type; typedef_Traits

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

1.ostream_iterator

template <class _Tp,

          class _CharT = char, class _Traits = char_traits<_CharT> >

class
ostream_iterator {

public:

  typedef _CharT                         char_type;

  typedef _Traits                        traits_type;

  typedef basic_ostream<_CharT, _Traits> ostream_type;

  typedef output_iterator_tag            iterator_category;

  typedef void                           value_type;

  typedef void                           difference_type;

  typedef void                           pointer;

  typedef void                           reference;

  ostream_iterator(ostream_type&
__s) :
_M_stream(&
__s),
_M_string(0) {}

  ostream_iterator(ostream_type&
__s, const _CharT*
__c)

    :
_M_stream(&
__s),
_M_string(
__c)  {}

  ostream_iterator<_Tp>&
operator=(const _Tp&
__value) {

    *
_M_stream <<
__value;

    if (
_M_string) *
_M_stream <<
_M_string;

    return *this;

  }

  ostream_iterator<_Tp>&
operator*() { return *this; }

  ostream_iterator<_Tp>&
operator++() { return *this; }

  ostream_iterator<_Tp>&
operator++(int) { return *this; }

private:

  ostream_type*
_M_stream;

  const _CharT*
_M_string;

};

2.示例

http://www.cplusplus.com/reference/iterator/ostream_iterator/

// ostream_iterator example
#include <iostream>     // std::cout
#include <iterator>     // std::ostream_iterator
#include <vector>       // std::vector
#include <algorithm>    // std::copy

int main () {
  std::vector<int> myvector;
  for (int i=1; i<10; ++i) myvector.push_back(i*10);

  std::ostream_iterator<int> out_it (std::cout,", ");
  std::copy ( myvector.begin(), myvector.end(), out_it );
  return 0;
}

Jetbrains全家桶1年46,售后保障稳定

运行结果:

ostream iterator

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/234140.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号