共用方式為


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 。 - _First),以最小的值開始因為 N 會明顯增加。 如果 _Dest 和 _First 指定儲存的區域,則 _Dest 不能介於 [_First, _Last)。

需求

標頭:<algorithm>

命名空間: std

請參閱

參考

標準樣板程式庫