Поделиться через


count

Возвращает число элементов в диапазоне, значения которого соответствуют указанному значению.

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

Параметры

  • _First
    Итератор ввода адресацию положение первого элемента в диапазоне быть траверсированным.

  • _Last
    Итератор ввода final адресации позиция одно за элементом в диапазоне быть траверсированным.

  • _Val
    Значения элементов, которые требуется подсчитать.

Возвращаемое значение

Тип отличия InputIterator, который подсчитывает количество элементов в диапазоне [ _First, _Last ), которые имеют значение _Val.

Заметки

operator==, используемое для определения соответствия между элементом и заданным значением должно установить equivalence связь между ее операндами.

Этот алгоритм обобщен для подсчета элементы, которые удовлетворяют любой предикат с функцией 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 Samples)

Стандартная библиотека шаблонов