count

値が指定された値と一致する範囲の要素数を返します。

template<class InputIterator, class Type> 
   typename iterator_traits<InputIterator>::difference_type count( 
      InputIterator _First,  
      InputIterator _Last,  
      const Type& _Val 
   );

パラメーター

  • _First
    走査する範囲の先頭の要素の位置を示す入力反復子。

  • _Last
    走査する範囲の最後の要素の一つ前の 1 の位置を示す入力反復子。

  • _Val
    カウントされません。要素の値。

戻り値

値 _Valがある範囲[ _First、_Last) 内の要素数をカウントする InputIterator の相違点の種類。

解説

要素で指定された値との一致を決定するために使用される operator== がオペランド間の等価関係を課さなければ必要があります。

このアルゴリズムは、テンプレート関数 count_ifに述語を満たす要素をカウントする汎化されます。

使用例

// alg_count.cpp
// compile with: /EHsc
#include <vector>
#include <algorithm>
#include <iostream>

int main()
{
    using namespace std;
    vector<int> v1;
    vector<int>::iterator Iter;

    v1.push_back(10);
    v1.push_back(20);
    v1.push_back(10);
    v1.push_back(40);
    v1.push_back(10);

    cout << "v1 = ( " ;
    for (Iter = v1.begin(); Iter != v1.end(); Iter++)
        cout << *Iter << " ";
    cout << ")" << endl;

    vector<int>::iterator::difference_type result;
    result = count(v1.begin(), v1.end(), 10);
    cout << "The number of 10s in v2 is: " << result << "." << endl;
}
  

必要条件

ヘッダー: <algorithm>

名前空間: std

参照

関連項目

count (STL のサンプル)

標準テンプレート ライブラリ