std::insert_iterator<Container>::operator=
< cpp | iterator | insert iterator
(1) | ||
insert_iterator<Container>& operator=( typename Container::const_reference value ); |
(C++11 前) | |
insert_iterator<Container>& operator=( const typename Container::value_type& value ); |
(C++11 起) (C++20 前) |
|
constexpr insert_iterator<Container>& operator=( const typename Container::value_type& value ); |
(C++20 起) | |
(2) | ||
insert_iterator<Container>& operator=( typename Container::value_type&& value ); |
(C++11 起) (C++20 前) |
|
constexpr insert_iterator<Container>& operator=( typename Container::value_type&& value ); |
(C++20 起) | |
插入给定的 value
到迭代器。
1) 导致 iter = container->insert(iter, value); ++iter;
2) 导致 iter = container->insert(iter, std::move(value)); ++iter;
参数
value | - | 要插入的值 |
返回值
*this
注意
此函数开创了关联容器的有提示插入(例如 std::set::insert )和顺序容器的定位插入(例如 std::vector::insert )间的签名兼容性。
示例
运行此代码
#include <iostream> #include <iterator> #include <deque> int main() { std::deque<int> q; std::insert_iterator< std::deque<int> > it(q, q.begin()); for (int i=0; i<10; ++i) it = i; // 插入 i for (auto& elem : q) std::cout << elem << ' '; }
输出:
0 1 2 3 4 5 6 7 8 9