まず、std::count()関数の基本的な構文を見てみましょう。
#include <algorithm>
#include <iostream>
#include <vector>
int main() {
std::vector<int> numbers = {1, 2, 3, 4, 2, 2, 3};
int target = 2;
int count = std::count(numbers.begin(), numbers.end(), target);
std::cout << "The count of " << target << " is: " << count << std::endl;
return 0;
}
この例では、std::vectorを使用して整数のコンテナを作成し、その中から特定の値「2」の数を数えています。std::count()関数は、引数として数えたい範囲の先頭と終端のイテレータと、数えたい値を受け取ります。この関数は、数えたい値がコンテナ内にいくつ存在するかを返します。
もう少し具体的な例を見てみましょう。
#include <algorithm>
#include <iostream>
#include <array>
int main() {
std::array<int, 7> numbers = {1, 2, 1, 2, 3, 1, 2};
int target = 1;
int count = std::count(numbers.begin(), numbers.end(), target);
std::cout << "The count of " << target << " is: " << count << std::endl;
return 0;
}
この例では、std::arrayを使用して整数の固定サイズのコンテナを作成し、その中から特定の値「1」の数を数えています。std::count()関数は、様々なコンテナタイプで使用することができます。
また、std::count()関数は様々なデータ型にも適用することができます。たとえば、文字列やユーザー定義のクラスなども対象となります。
#include <algorithm>
#include <iostream>
#include <string>
int main() {
std::string sentence = "I love programming, programming is fun!";
char target = 'm';
int count = std::count(sentence.begin(), sentence.end(), target);
std::cout << "The count of '" << target << "' is: " << count << std::endl;
return 0;
}
この例では、std::stringを使用して文字列を作成し、文字「m」の数を数えています。
以上が、std::count()関数の使用方法といくつかのコード例です。この関数は、特定の値の出現回数を数える場合に便利です。他にもSTLにはさまざまな便利な関数が存在するので、興味がある場合はさらに学習してみてください。