21xrx.com
2024-12-28 12:57:48 Saturday
登录
文章检索 我的文章 写文章
C++中的count函数
2023-06-27 05:24:50 深夜i     --     --
C++ count函数 数组 容器 算法

C++是一种重要的编程语言,具有高效性、可靠性和可移植性,常被应用于系统软件、游戏开发和大型企业级应用程序的开发。而在C++中,一个非常有用的函数就是count函数。

count函数是一个头文件algorithm中的函数,用于计算一个容器中具有某个值的元素个数。容器可以是vector、deque、string等。其语法如下:

count(first_iterator, last_iterator, value_to_count)

其中,first_iterator和last_iterator用于指定要计算的容器的起始和末尾位置,value_to_count是要计算的值。

下面是一个例子:


#include <iostream>

#include <algorithm>

#include <vector>

int main()

{

  std::vector<int> vec 3;

  int count = std::count(vec.begin(), vec.end(), 2);

  std::cout << "Number of occurrences of 2 is: " << count << std::endl;

  return 0;

}

在上述例子中,我们定义了一个包含7个整数的vector容器。我们使用count函数来计算这个容器中值为2的元素个数。输出结果为:Number of occurrences of 2 is: 3。

除了计算基本数据类型(如int、double)之外,count函数也可以计算容器中自定义类型的对象。例如:


#include <iostream>

#include <algorithm>

#include <vector>

class Person

{

public:

  std::string name;

  int age;

  Person(std::string name, int age)

  

    this->name = name;

    this->age = age;

  

  bool operator == (const Person& person) const

  {

    return (name == person.name && age == person.age);

  }

};

int main()

{

  std::vector<Person> people;

  people.push_back(Person("John", 30));

  people.push_back(Person("Jane", 20));

  people.push_back(Person("John", 30));

  int count = std::count(people.begin(), people.end(), Person("John", 30));

  std::cout << "Number of occurrences of John (30 years old) is: " << count << std::endl;

  return 0;

}

在上述例子中,我们定义了一个名为Person的类对象,包含姓名和年龄两个属性,并重载了==操作符。我们使用count函数计算people容器中名为“John”,年龄为30的人的个数。输出结果为:Number of occurrences of John (30 years old) is: 2。

在C++中,count函数是一个非常重要的函数。它可以让程序员快速、方便地计算容器中具有某个值的元素个数,并且适用于各种类型的数据。程序员可以在自己的代码中根据需要使用这个函数,提高代码的效率和可读性。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复