Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
std::back_insert_iterator(3)  C++ Standard Libary std::back_insert_iterator(3)

NAME
       std::back_insert_iterator - std::back_insert_iterator

Synopsis
	  Defined in header <iterator>
	  template< class Container >

	  class	     back_insert_iterator      :     public	std::iterator<
       (until C++17)
	  std::output_iterator_tag,

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

	  std::back_insert_iterator is a LegacyOutputIterator that appends el-
       ements to a
	  container  for which it was constructed. The container's push_back()
       member function
	  is called whenever the iterator (whether dereferenced	or not)	is as-
       signed to.
	  Incrementing the std::back_insert_iterator is	a no-op.

Member types
	  Member type	    Definition
	  iterator_category std::output_iterator_tag
	  value_type	    void
	  difference_type   void	   (until C++20)
			    std::ptrdiff_t (since C++20)
	  pointer	    void
	  reference	    void
	  container_type    Container

	  Member types iterator_category, value_type, difference_type, pointer
	  and reference	 are  required	to  be	obtained  by  inheriting  from
       (until C++17)
	  std::iterator<std::output_iterator_tag, void,	void, void, void>.

Member functions
	  constructor	  constructs a new back_insert_iterator
			  (public member function)
	  operator=	  inserts an object into the associated	container
			  (public member function)
	  operator*	  no-op
			  (public member function)
	  operator++	  no-op
	  operator++(int) (public member function)

Member objects
	  Member name		Definition
	  container (protected)	a pointer of type Container*

Example
       // Run this code

	#include <iostream>
	#include <iterator>
	#include <algorithm>
	#include <vector>

	int main()
	{
	  std::vector<int> v;
	  std::generate_n(
	    std::back_insert_iterator<std::vector<int>>(v),	 //	C++17:
       std::back_insert_iterator(v)
	    10,	 [n=0]()  mutable  {  return  ++n;  }		   //  or  use
       std::back_inserter helper
	  );

	  for (int n : v)
	    std::cout << n << '	';
	  std::cout << '\n';
	}

Output:
	1 2 3 4	5 6 7 8	9 10

See also
				creates	 a  std::back_insert_iterator  of type
       inferred	from the
	  back_inserter		argument
				(function template)
	  front_insert_iterator	iterator adaptor for insertion at the front of
       a container
				(class template)
	  insert_iterator	iterator adaptor for  insertion	 into  a  con-
       tainer
				(class template)

http://cppreference.com		  2022.07.31	  std::back_insert_iterator(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=std::back_insert_iterator&sektion=3&manpath=FreeBSD+Ports+15.0>

home | help