C++ count_if处理自定义类型

   2024-10-01 3750
核心提示:在C++中,可以使用count_if函数来处理自定义类型。count_if函数可以接受一个范围和一个谓词函数,并返回范围中满足谓词函数条件

在C++中,可以使用count_if函数来处理自定义类型。count_if函数可以接受一个范围和一个谓词函数,并返回范围中满足谓词函数条件的元素个数。

下面是一个例子,展示如何使用count_if函数处理一个自定义类型Person的向量,统计其中满足条件的元素个数:

#include <iostream>#include <vector>#include <algorithm>// 自定义类型 Personstruct Person {    std::string name;    int age;};// 谓词函数,用于判断年龄大于等于18岁的人bool isAdult(const Person& person) {    return person.age >= 18;}int main() {    // 创建一个存储 Person 对象的向量    std::vector<Person> people = {        {"Alice", 25},        {"Bob", 16},        {"Charlie", 30},        {"David", 20}    };    // 使用 count_if 函数统计年龄大于等于18岁的人数    int numAdults = std::count_if(people.begin(), people.end(), isAdult);    std::cout << "Number of adults: " << numAdults << std::endl;    return 0;}

在上面的例子中,定义了一个自定义类型Person,并创建了一个存储Person对象的向量people。然后定义了一个谓词函数isAdult,用于判断一个Person对象是否年龄大于等于18岁。最后使用count_if函数统计people向量中满足条件的元素个数,并输出结果。

通过这种方式,可以方便地处理自定义类型的数据,并使用count_if函数对其进行处理。

 
举报打赏
 
更多>同类物流大全
推荐图文
推荐物流大全
点击排行

网站首页  |  关于我们  |  联系方式网站留言    |  赣ICP备2021007278号