std::back_insert_iterator_C++中文网
| 定义于头文件 |
||
| template< class Container > class back_insert_iterator : public std::iterator< std::output_iterator_tag, |
(C++17 前) | |
| template< class Container > |
(C++17 起) | |
std::back_insert_iterator 后附到为之创建它的容器的遗留输出迭代器 (LegacyOutputIterator) 。凡在赋值迭代器时调用容器的 push_back() 成员函数(无论是否解引用)。自增 std::back_insert_iterator 是无操作。
成员类型
| 成员类型 | 定义 |
iterator_category
|
std::output_iterator_tag |
value_type
|
void |
difference_type
|
void |
pointer
|
void |
reference
|
void |
container_type
|
Container
|
成员函数
成员对象
| 成员名称 | 定义 |
container (受保护成员对象)
|
类型 Container* 的指针
|
示例
#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), // std::back_inserter 10, [n = 0]() mutable { return ++n; }); // 可用以简化 for (int n : v) std::cout << n << ' '; std::cout << '\n'; }
输出: