std::list::insert

From cppreference.com

Template:cpp/container/list/navbar

iterator insert( iterator pos, const T& value );
iterator insert( const_iterator pos, const T& value );
(1) (until C++11)
(since C++11)
iterator insert( const_iterator pos, T&& value );
(2) (since C++11)
void insert( iterator pos, size_type count, const T& value );
iterator insert( const_iterator pos, size_type count, const T& value );
(3) (until C++11)
(since C++11)
template< class InputIterator >

void insert( iterator pos, InputIterator first, InputIterator last);
template< class InputIterator >

iterator insert( const_iterator pos, InputIterator first, InputIterator last );
(4) (until C++11)

(since C++11)
iterator insert( const_iterator pos, std::initializer_list<T> ilist );
(5) (since C++11)

Inserts elements to specified position in the container.

1-2) inserts value before the element pointed to by pos

3) inserts count copies of the value before the element pointed to by pos

4) inserts elements from range [first, last) before the element pointed to by pos

5) inserts elements from initializer list ilist.

No iterators or references are invalidated.

Contents

[edit] Parameters

pos - element before which the content will be inserted
value - element value to insert
first, last - the range of elements to insert, can't be iterators into container for which insert is called
ilist - initializer list to insert the values from

[edit] Return value

1-2) iterator pointing to the inserted value

3) iterator pointing to the first element inserted, or pos if count==0.

4) iterator pointing to the first element inserted, or pos if first==last.

5) iterator pointing to the first element inserted, or pos if ilist is empty.

[edit] Complexity

1-2) Constant.

3) Linear in count

4) Linear in std::distance(first, last)

5) Linear in ilist.size()

[edit] See also

(C++11)
constructs element in-place
(public member function)
inserts elements to the beginning
(public member function)
adds elements to the end
(public member function)