std::insert_iterator<Container>:: insert_iterator

From cppreference.com

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)
insert_iterator ( Container & c, typename Container :: iterator i ) ;
(until C++20)
constexpr insert_iterator ( Container & c, ranges:: iterator_t < Container > i ) ;
(since C++20)

Initializes the underlying pointer to the container to std:: addressof ( c ) and the underlying iterator to i .

Parameters

c - container to initialize the inserter with
i - iterator to initialize the inserter with

Defect reports

The following behavior-changing defect reports were applied retroactively to previously published C++ standards.

DR Applied to Behavior as published Correct behavior
LWG 561 C++98 the type of i was independent of Container it is the iterator type of Container
P2325R3 C++20 default constructor was provided as C++20
iterators must be default_initializable
removed along with the requirement