首页 > 其他分享 >仿函数(函数对象)functor的用法

仿函数(函数对象)functor的用法

时间:2022-10-25 17:55:29浏览次数:56  
标签:set 函数 less 对象 functor 用法 排序

引子

在set的类模板中,插入元素是会自动排序的,那么这是如何实现的呢。

默认的set<int>  setl; 这种写法,他会调用默认的less函数对象

less函数对象实现比较,为排序提供依据,set<int,  less<int>>  set1; (由小到大排序,即通过迭代器输出是,由小到大)

greater函数对象(仿函数)实现比较,set<int, greater<int>> set1; (大到小,即通过迭代器输出是,由大到小)

此外,如果set中插入的是自己定义的类,那么为了使less和greater函数能够正常使用,是需要在类中进行运算符重载的,less重载<,greater重载> 

 

 

补充

我们还可以自己定义仿函数。

 运行结果:

 

标签:set,函数,less,对象,functor,用法,排序
From: https://www.cnblogs.com/ylww/p/16817240.html

相关文章

  • 友元函数破坏了类的封装和信息隐藏
    在c++中,通过类可以实现数据的封装性和信息隐藏的能力,而友元函数则破坏了类的封装和信息隐藏的能力,使得类的私有属性的成员变量可以被其他类对象的方法直接访问。#include<......
  • 常见的数字和字符串的函数
     数字函数pycharm中使用ctrl+鼠标左键查看详细的函数int将字符串转换为int(注意:input输入的都是字符串即使你输入的是数字,也需要使用int函数将字符串转为为数字)#!/......
  • Python命名空间(函数)
    作用域:作用范围#命名空间:划分一块区域保存所有的数据,以字典方式存储(变量与值形成映射关系)#内建命名空间:解释器启动时创建,直到解释器运行结束,生存周期最长#全局命名空......
  • 随机变量函数的分布:Y=g(X)
    ......
  • Mysql rank排名函数
    https://www.jianshu.com/p/776151cbba03https://blog.csdn.net/m0_60196931/article/details/125214918......
  • Yii2 ActiveForm 用法
    Yii2ActiveForm用法模板<?php$form=ActiveForm::begin()?><?=$form->field($model,'id')->hiddenInput()?><?=$form->field($model,'title')->textInput(......
  • shell脚本之函数
    一、函数概念及格式1、函数的概念函数定义:封装的可重复利用的具有特定功能的代码函数就是可以在shell脚本当中做出一个类似自定义执行的命令的东西,最大的功能就是简化......
  • SIMD与函数式
    SIMD"单指令,多数据",主要用在3D图形运算,物理模拟等项目中。//可以实现数组的一次性相加vara=SIMD.Float32x4(1,2,3,4);varb=SIMD.Float32x4(5,6,7,8);va......
  • next_permutation / prev_permutation 用法
    给定输入的序列a(整数即可,其他无限制条件),next_permutation(a+1,a+n+1)可以求出a的关于值的下一个排列,prev_permutation(a+1,a+n+1)可以求出a的关于值......
  • c#枚举enum用法
    转载:https://www.cnblogs.com/eliauk-L/p/16185682.html1.定义枚举类型publicenumTest{男=0,女=1}publicenumTest{男,女}2.获......