logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

std::insert_iterator< _Container > - Turns assignment into insertion.

Author

       Generated automatically by Doxygen for libstdc++ from the source code.

                                                    libstdc++           std::insert_iterator<_Container>(3cxx)

Constructor & Destructor Documentation

template<typename_Container>constexprstd::insert_iterator<_Container>::insert_iterator(_Container&__x,_Iter__i)[inline],[constexpr]
       The only way to create this iterator is with a container and an initial position (a normal iterator into
       the container).

Detailed Description

template<typename_Container>
       class std::insert_iterator< _Container >"Turns assignment into insertion.

       These are output iterators, constructed from a container-of-T. Assigning a T to the iterator inserts it
       in the container at the iterator's position, rather than overwriting the value at that position.

       (Sequences will actually insert a copy of the value before the iterator's position.)

       Tip: Using the inserter function to create these iterators can save typing.

Member Function Documentation

template<typename_Container>constexprinsert_iterator&std::insert_iterator<_Container>::operator*()[inline],[constexpr]
       Simply returns *this.

   template<typename_Container>constexprinsert_iterator&std::insert_iterator<_Container>::operator++()[inline],[constexpr]
       Simply returns *this. (This iterator does not move.)

   template<typename_Container>constexprinsert_iterator&std::insert_iterator<_Container>::operator++(int)[inline],[constexpr]
       Simply returns *this. (This iterator does not move.)

   template<typename_Container>constexprinsert_iterator&std::insert_iterator<_Container>::operator=(consttypename_Container::value_type&__value)[inline],[constexpr]Parameters__value An instance of whatever type container_type::const_reference is; presumably a reference-to-
           const T for container<T>.

       Returns
           This iterator, for chained operations.

       This kind of iterator maintains its own position in the container. Assigning a value to the iterator will
       insert the value into the container at the place before the iterator.

       The position is maintained such that subsequent assignments will insert values immediately after one
       another. For example,

       // vector v contains A and Z

       insert_iterator i (v, ++v.begin());
       i = 1;
       i = 2;
       i = 3;

       // vector v contains A, 1, 2, 3, and Z

Member Typedef Documentation

template<typename_Container>typedef_Containerstd::insert_iterator<_Container>::container_type
       A nested typedef for the type of whatever container you used.

   typedefoutput_iterator_tagstd::iterator<output_iterator_tag,void,void,void,void>::iterator_category[inherited]
       One of the tagtypes.

   typedefvoidstd::iterator<output_iterator_tag,void,void,void,void>::pointer[inherited]
       This type represents a pointer-to-value_type.

   typedefvoidstd::iterator<output_iterator_tag,void,void,void,void>::reference[inherited]
       This type represents a reference-to-value_type.

   typedefvoidstd::iterator<output_iterator_tag,void,void,void,void>::value_type[inherited]
       The type 'pointed to' by the iterator.

Name

       std::insert_iterator< _Container > - Turns assignment into insertion.

Synopsis

       #include <iterator>

       Inherits std::iterator<output_iterator_tag,void,void,void,void>.

   PublicTypestypedef _Container container_type
           A nested typedef for the type of whatever container you used.
       usingdifference_type = ptrdiff_t
       typedefoutput_iterator_tagiterator_category
           One of the tagtypes.
       typedefvoidpointer
           This type represents a pointer-to-value_type.
       typedefvoidreference
           This type represents a reference-to-value_type.
       typedefvoidvalue_type
           The type 'pointed to' by the iterator.

   PublicMemberFunctions
       constexpr insert_iterator (_Container &__x, _Iter __i)
       constexpr insert_iterator & operator* ()
           Simply returns *this.
       constexpr insert_iterator & operator++ ()
           Simply returns *this. (This iterator does not move.)
       constexpr insert_iterator & operator++ (int)
           Simply returns *this. (This iterator does not move.)
       constexpr insert_iterator & operator= (const typename _Container::value_type &__value)
       constexpr insert_iterator & operator= (typename _Container::value_type &&__value)

   ProtectedAttributes
       _Container * container
       _Iter iter

See Also