名前空間
変種

std::move_iterator

提供: cppreference.com
 
 
イテレータライブラリ
イテレータコンセプト
イテレータプリミティブ
アルゴリズムのコンセプトとユーティリティ
間接呼び出し可能コンセプト
共通アルゴリズム要件
ユーティリティ
イテレータアダプタ
ストリームイテレータ
イテレータのカスタマイゼーションポイント
イテレータ操作
(C++11)
(C++11)
範囲アクセス
(C++11)(C++14)
(C++11)(C++14)
(C++17)(C++20)
(C++14)(C++14)
(C++14)(C++14)
(C++17)
(C++17)
 
 
<tbody> </tbody>
ヘッダ <iterator> で定義
template< class Iter > class move_iterator;
(C++11以上)

std::move_iterator は、逆参照がベースとなるイテレータから返された値を右辺値に変換することを除いて、ベースとなるイテレータ (少なくとも LegacyInputIterator でなければなりません) とまったく同様に振る舞うイテレータアダプタです。 このイテレータが入力イテレータとして使用された場合、その効果は値をコピーするのではなくムーブします。

メンバ関数

メンバ型 定義
iterator_type Iter
iterator_category

std::iterator_traits<Iter>::iterator_category

(C++20未満)

std::iterator_traits<Iter>::iterator_categorystd::derived_from<std::random_access_iterator_tag> をモデル化する場合は std::random_access_iterator_tag、そうでなければ無変更の std::iterator_traits<Iter>::iterator_category

(C++20以上)
iterator_concept
(C++20以上)
std::input_iterator_tag
value_type

std::iterator_traits<Iter>::value_type

(C++20未満)

std::iter_value_t<Iter>

(C++20以上)
difference_type

std::iterator_traits<Iter>::difference_type

(C++20未満)

std::iter_difference_t<Iter>

(C++20以上)
pointer Iter
reference

value_type&&

(C++17未満)

std::iterator_traits<Iter>::reference が参照の場合は同じ型の右辺値参照、そうでなければ (ラップされたイテレータが値で返す場合など) 無変更の std::iterator_traits<Iter>::reference

(C++17以上)
(C++20未満)

std::iter_rvalue_reference_t<Iter>

(C++20以上)

メンバ関数

新しいイテレータアダプタを構築します