欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

C++优先队列(priority_queue) - 第五种方法:运用function和lambda表达式的自定义排序功能

最编程 2024-07-19 21:39:51
...

要加入头文件#include<functional>

由于function对lambda函数进行了包装 ,cmp本身就是一个对象地址。(function对象)
直接decltype(cmp)获得函数指针 的类型。

function<bool(vector<int>&,vector<int>&)> cmp=[](vector<int>&a,vector<int>&b)->bool{
            return a[0]>b[0];
        };
priority_queue<vector<int>,vector<vector<int>>,decltype(cmp)> q(cmp);//小顶堆

这是属于传入 函数指针的方式。