首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用functor作为谓词的C++ STL程序

C++ STL程序使用functor作为谓词

在C++中,使用functor作为谓词可以增强程序的功能和灵活性。以下是一个使用functor作为谓词的C++ STL程序的示例:

代码语言:c++
复制
#include <iostream>
#include <vector>
#include <algorithm>

// 定义一个functor对象
class MyFunctor {
public:
    bool operator()(const int& a, const int& b) const {
        return a > b;
    }
};

int main() {
    // 创建一个vector
    std::vector<int> numbers = {1, 5, 3, 7, 2};

    // 使用std::sort()函数对vector进行排序
    std::sort(numbers.begin(), numbers.end(), MyFunctor());

    // 输出排序后的vector
    for (int num : numbers) {
        std::cout << num << " ";
    }
    std::cout << std::endl;

    return 0;
}

在上面的程序中,我们定义了一个MyFunctor类,该类包含一个成员函数operator(),该函数的返回类型为bool,参数为两个整数。在main()函数中,我们创建了一个std::vector<int>类型的变量numbers,并使用std::sort()函数对其进行排序。在这个例子中,我们使用MyFunctor类作为std::sort()函数的谓词。std::sort()函数将使用MyFunctor对象的operator()函数来比较numbers向量中的元素,并进行升序排序。最后,我们使用for循环输出排序后的vector。

这个程序演示了如何使用C++ STL中的functor对象对vector进行排序。通过使用functor,我们可以将灵活的逻辑与排序算法相结合,并避免修改原始函数的代码。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

13分2秒

C ++ Primer plus学习记录之路.1

12分53秒

C ++ Primer plus学习记录之路.2

14分20秒

C ++ Primer plus学习记录之路.3

2分22秒

JEB Decompiler介绍

17分33秒

为什么AI训练使用GPU而不是CPU?【AI芯片】GPU原理02

5分41秒

040_缩进几个字符好_输出所有键盘字符_循环遍历_indent

42分42秒

ClickHouse在有赞的使用和优化

16分8秒

Tspider分库分表的部署 - MySQL

1分37秒

MR300C图传模块 USB摄像头内窥镜转WIFI网口WEBcam机器人图像传输

1分30秒

基于强化学习协助机器人系统在多个操纵器之间负载均衡。

领券