copy_if
V rozsahu prvků, zkopíruje prvky, které jsou true pro zadanou podmínku.
template<class InputIterator, class OutputIterator, class BinaryPredicate>
OutputIterator copy_if(
InputIterator _First,
InputIterator _Last,
OutputIterator _Dest,
Predicate _Pred
);
Parametry
_First
Vstupní iterační označující začátek rozsahu ke kontrole stavu._Last
Vstupní iterační označující konec rozsahu._Dest
Výstup iterátor, který označuje cíli pro zkopírované prvky._Pred
Stav, proti které je testována každý prvek v rozsahu.Tato podmínka je k dispozici objekt predikátu funkce definované uživatelem.Predikátu přijímá jeden argument a vrátí true nebo false.
Vrácená hodnota
Iterátor výstup, který se rovná _Dest zvýšen jednou pro každý prvek, který splňuje podmínku.Jinými slovy, vrácená hodnota minus _Dest se rovná počtu zkopírované prvky.
Poznámky
Funkce šablony
if (_Pred(*_First + N))
*_Dest++ = *(_First + N))
jednou pro každý N v rozsahu[0, _Last - _First), pro přísné zvýšení hodnot N počínaje nejnižší hodnotou.Pokud _Dest a _First určují oblasti úložiště, _Dest nesmí být v rozsahu [_First, _Last).
Požadavky
Záhlaví: <algoritmus>
Obor názvů: std