is_sorted_until
ForwardIterator を返します。指定した範囲の並べ替えられた順序である最後の要素に設定されている。
2 番目のバージョンは、2 種類の特定の要素を並べ替え順序であると、false を返す場合は、別の方法で trueBinaryPredicate の関数を提供することができます。
template<class ForwardIterator>
ForwardIterator is_sorted_until(
ForwardIterator _First,
ForwardIterator _Last
);
template<class ForwardIterator, class BinaryPredicate>
ForwardIterator is_sorted_until(
ForwardIterator _First,
ForwardIterator _Last,
BinaryPredicate _Comp
);
パラメーター
_First
開始をチェックするには範囲を示す前方反復子。_Last
範囲の終了を示す前方反復子。_Comp
2 個の要素間の順序を決定するためにテストする必要条件。述語は、一つの引数を受け取り、true か falseを返します。
戻り値
並べ替えられた順序で設定されている最後の要素に ForwardIterator を返します。並べ替えられたシーケンスは _Firstから開始します。
解説
一つ目のテンプレート関数は、[_First, next) が operator<であり、並べ替えられたシーケンスになるように [_First,_Last] の最後の反復子 next を返します。distance()< 2 が関数 _Lastを返します。
2 番目のテンプレート関数は同様に動作します。ただし、_Comp(X, Y)と operator<(X, Y) を置き換えます。
必要条件
ヘッダー: <algorithm>
名前空間: std