copy_if
In einem Bereich Kopien von Elementen, die Elemente, die true für die angegebene Bedingung sind.
template<class InputIterator, class OutputIterator, class BinaryPredicate>
OutputIterator copy_if(
InputIterator _First,
InputIterator _Last,
OutputIterator _Dest,
Predicate _Pred
);
Parameter
_First
Ein Eingabeiterator, der den Anfang eines Bereichs angibt, auf den Zustand zu überprüfen._Last
Ein Eingabeiterator, der das Ende des Bereichs angibt._Dest
Der Ausgabeiterator, der das Ziel für die kopierten Elemente angibt._Pred
Die Bedingung, die für jedes Element im Bereich getestet wird.Diese Bedingung wird von einem benutzerdefinierten Prädikatfunktionsobjekt bereitgestellt.Ein Prädikat übernimmt ein Argument und gibt true oder false zurück.
Rückgabewert
Ein Ausgabeiterator, der _Dest entspricht, inkrementierte einmal für jedes Element, das die Bedingung erfüllt.Das heißt, entspricht der Rückgabewert _Dest minus der Anzahl der kopierten Elemente.
Hinweise
Die Vorlagenfunktion wertet aus
if (_Pred(*_First + N))
*_Dest++ = *(_First + N))
einmal für jedes N im Bereich [0,_Last - _First), für ausschließlich erhöht Werte von N beginnend mit dem niedrigsten Wert.Wenn _Dest und besondere Bereiche _First des Speichers, _Dest nicht im Bereich [_First,_Last) sein dürfen.
Anforderungen
Header: <algorithm>
Namespace: std