namespace std {
template <class Container>
class front_insert_iterator
: public iterator<output_iterator_tag, void, void, void, void>;
}
概要
front_insert_iterator
は出力イテレータであり、代入の際にコンテナのpush_front()
メンバ関数を呼び出すイテレータアダプタである。
メンバ関数
名前 | 説明 | 対応バージョン |
---|---|---|
(constructor) |
コンストラクタ | |
~front_insert_iterator() = default |
デストラクタ | |
operator= |
代入演算子 | |
operator* |
間接参照演算子 | |
operator++ |
イテレータをインクリメントする |
protectedメンバ変数
変数名 | 型 | 対応バージョン |
---|---|---|
container |
Container* |
メンバ型
名前 | 説明 | 対応バージョン |
---|---|---|
container_type |
Container |
|
difference_type |
void |
|
difference_type |
ptrdiff_t |
C++20 |
pointer |
void |
|
value_type |
void |
|
iterator_category |
output_iterator_tag |
|
reference |
void |
非メンバ関数
名前 | 説明 | 対応バージョン |
---|---|---|
front_inserter |
front_insert_iterator のヘルパ関数 |
例
#include <iostream>
#include <deque>
#include <iterator>
#include <algorithm>
int main()
{
std::deque<int> src = {1, 2, 3};
std::deque<int> dest;
// srcの要素をdestの先頭に追加しながらコピー
std::copy(src.begin(), src.end(), std::front_inserter(dest));
for (int x : dest) {
std::cout << x << std::endl;
}
}
出力
3
2
1