Movatterモバイル変換


[0]ホーム

URL:


cppreference.com
Namespaces
Variants
    Actions

      std::insert_iterator

      From cppreference.com
      <cpp‎ |iterator
       
       
      Iterator library
      Iterator concepts
      Iterator primitives
      Algorithm concepts and utilities
      Indirect callable concepts
      Common algorithm requirements
      (C++20)
      (C++20)
      (C++20)
      Utilities
      (C++20)
      Iterator adaptors
      Range access
      (C++11)(C++14)
      (C++14)(C++14)  
      (C++11)(C++14)
      (C++14)(C++14)  
      (C++17)(C++20)
      (C++17)
      (C++17)
       
       
      Defined in header<iterator>
      template<class Container>

      class insert_iterator:publicstd::iterator<std::output_iterator_tag,

                                                   void,void,void,void>
      (until C++17)
      template<class Container>
      class insert_iterator;
      (since C++17)

      std::insert_iterator is aLegacyOutputIterator that inserts elements into a container for which it was constructed, at the position pointed to by the supplied iterator. The container'sinsert() member function is called whenever the iterator (whether dereferenced or not) is assigned to. Incrementing thestd::insert_iterator is a no-op.

      Contents

      [edit]Member types

      Member type Definition
      iterator_categorystd::output_iterator_tag
      value_typevoid
      difference_type

      void

      (until C++20)

      std::ptrdiff_t

      (since C++20)
      pointervoid
      referencevoid
      container_typeContainer

      Member typesiterator_category,value_type,difference_type,pointer andreference are required to be obtained by inheriting fromstd::iterator<std::output_iterator_tag,void,void,void,void>.

      (until C++17)

      [edit]Member functions

      constructs a newinsert_iterator
      (public member function)[edit]
      inserts an object into the associated container
      (public member function)[edit]
      no-op
      (public member function)[edit]
      no-op
      (public member function)[edit]

      [edit]Member objects

      Member name Definition
      container(protected member object) a pointer of typeContainer*
      iter(protected member object) an iterator of typeContainer::iterator(until C++20)ranges::iterator_t<Container>(since C++20)

      [edit]Example

      Run this code
      #include <algorithm>#include <iostream>#include <iterator>#include <list>#include <vector> int main(){std::vector<int> v{1,2,3,4,5};std::list<int> l{-1,-2,-3};std::copy(v.begin(), v.end(),// may be simplified with std::inserter              std::insert_iterator<std::list<int>>(l,std::next(l.begin())));for(int n: l)std::cout<< n<<' ';std::cout<<'\n';}

      Output:

      -1 1 2 3 4 5 -2 -3

      [edit]See also

      creates astd::insert_iterator of type inferred from the argument
      (function template)[edit]
      iterator adaptor for insertion at the end of a container
      (class template)[edit]
      iterator adaptor for insertion at the front of a container
      (class template)[edit]
      Retrieved from "https://en.cppreference.com/mwiki/index.php?title=cpp/iterator/insert_iterator&oldid=159912"

      [8]ページ先頭

      ©2009-2025 Movatter.jp