copy_if

在項目的範圍,複本是指定之條件的 true 的項目。

template<class InputIterator, class OutputIterator, class BinaryPredicate>
   OutputIterator copy_if(
      InputIterator _First, 
      InputIterator _Last,
      OutputIterator _Dest,
      Predicate _Pred
    );

參數

  • _First
    表示範圍開始檢查條件的輸入 Iterator。

  • _Last
    表示範圍結尾的輸入 Iterator。

  • _Dest
    指出複製的元素之目的端輸出 Iterator 的地方。

  • _Pred
    在這個範圍內的每個項目是測試的條件。使用者定義的述詞函式物件提供這種情況。述詞會採用一個引數並傳回 true 或 false。

傳回值

等於 _Dest 的輸出 Iterator 符合條件的每個項目使用。換句話說,會 _Dest 的傳回值與複製的元素數目。

備註

樣板函式評估

if (_Pred(*_First + N))

*_Dest++ = *(_First + N))

一次是在範圍 [0,_Last的每 N - 以最小的值 N 的確實地將值的_First),否則為。如果 _Dest 和儲存區, _Dest 的 _First 指定地區無法在範圍 [_First,_Last)。

需求

標題: <algorithm>

命名空間: std

請參閱

參考

標準樣板程式庫