当前位置: 首页 > news >正文

仿函数--set/map常用

一 定义
仿函数 = 像函数用的对象,类实例
✅ 仿函数是一种类型​
❌ 函数不是类型

二. 特点

  1. 像普通函数一样,可以有返回值,可以有参数
structmycompare{booloperator()(inta,intb)const{returna>b;// 降序}};

仿函数可以重载多个 operator(),但一旦要放进 map,必须只有一个 bool operator()(T, T),并且是严格的比较逻辑。

  1. 可以作为参数进行传递(可以匿名形式,如greater(),)
map<int,int,mycompare>mp;
  1. 可以具有状态
structCounter{intcount=0;voidoperator()(){++count;}};Counter c;c();c();c();// c.count == 3

三 .应用
1️⃣ STL 算法(最常见)
std::vector v = {3,1,4};

// 从小到大
std::sort(v.begin(), v.end(), std::less());

// 从大到小
std::sort(v.begin(), v.end(), std::greater());

2️⃣ 自定义排序 / 比较规则
cpp
struct Person {
int age;
};

struct Older {
bool operator()(const Person& a, const Person& b) const {
return a.age > b.age;
}
};

std::sort(v.begin(), v.end(), Older{});

3️⃣ 带状态的仿函数(函数做不到)
✅ 算法过程中记录调用的次数

http://www.rkmt.cn/news/1438949.html

相关文章:

  • 我花了6年写了14000行Go代码,给电工兄弟做了一个Modbus RTU数据采集工具
  • 保姆级教程:在VMware里给openEuler虚拟机扩容磁盘,不重启搞定LVM分区
  • 项目介绍 MATLAB实现基于双向门控循环单元(BiGRU))进行锂离子电池健康状态(SOH)的准确估计和剩余使用寿命(RUL)预测(含模型描述及部分示例代码)专栏近期有大量优惠 还请多多点一下关注
  • 从源码到接口:手把手教你用CMake和VS2019为Gmsh生成专属C++开发包
  • AnchorRefine框架:两阶段残差优化提升机器人操作精度
  • 保姆级教程!互联网用户行为日志数据加工全流程(解析 + 结构化 + 聚合分析,附完整代码 + 踩坑)
  • 从被动到主动:构建智能Slack机器人的架构演进与实践
  • 从DDR到DDR5:内存BANK交错技术(Interleaving)的演进与实战调优(以AMD平台为例)
  • Nat Med发表SPARK智能体框架,可以自主思考、提出假设、设计实验并验证结果,让AI也能主动发现肿瘤生物学规律
  • 从保温杯到电路板:聊聊‘导热系数’这个参数,以及我们怎么在实验室里测它
  • C语言指针精讲(三)∶数组名与指针访问,传参与冒泡排序
  • 【视频资料】NBA总决赛原版视频 (1991-2021)【中英解说】珍藏版
  • 监控画面总有雪花噪点?深入拆解海思/安霸芯片里的3D降噪技术到底是怎么工作的
  • 保姆级教程:用Altium Designer 23从零画一块Type-C小板(附立创EDA导库技巧)
  • 基于GPT与Pytest的API自动化测试生成实践
  • 【系统学AI】18 AI Native设计原则(2026版):10大原则+反模式+落地清单
  • YOLOv8/5实战:用Shape-IoU损失函数提升小目标检测精度(附代码)
  • 实习20-DeepResearch项目
  • 避坑指南:STM32G473 BootLoader开发中,中断向量表偏移与Flash布局的那些“坑”
  • 从‘光’到‘色’的魔法:拆解Unity渐变纹理Shader,理解Half Lambert与颜色映射的底层逻辑
  • 2026年西安市黄金回收靠谱门店推荐 黄金+K金+白银+铂金回收门店TOP5排行榜+联系方式 - 盛世金银回收
  • 2026年西宁市黄金回收靠谱门店推荐 黄金+K金+白银+铂金回收门店TOP5排行榜+联系方式 - 盛世金银回收
  • AI应用开发实战:从智能体架构到RAG系统设计
  • 单点修改、区间求和(模板)、区间修改,单点查询(模板)
  • 可观测性数据智能分析:AI如何赋能运维从监控到洞察
  • AI智能体安全盲区:传统安全分析为何失效及应对策略
  • 深入聊聊FPGA网络通信:为什么一个纯Verilog实现的、不带Ping功能的UDP协议栈反而更“香”?
  • 皇家守卫【算法赛】、百亿富翁、最大区间、附近最小
  • 厨房里的化学生态用鸿蒙PC的Electron框架实现
  • 用Python复现数学建模国赛C题:手把手教你用遗传算法优化电商物流网络(附完整代码)