博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
STL_算法_中使用的函数对象
阅读量:5332 次
发布时间:2019-06-14

本文共 914 字,大约阅读时间需要 3 分钟。

写在前面:

  STL算法中的 函数对象的功能:

    (1)、都是提供一种比较的函数,比较相邻的左右两个值的 相等/大小 等的关系,

    (2)、返回值都是bool :该返回值 貌似是指明 遍历元素是否还要继续往下进行,返回true==>继续下一组相邻元素的比较,返回false==>中断下一组相邻元素的比较。

 

 

1、

例如:

binary_search(?, ?, ?, ?); 

中的 第4个参数 是一个函数对象。

 

然后,第4个参数 可以传入下面3中样式的值:

1.1、

类似这样:

bool CompareInt (const int& _iLeft, const int& _iRight){    return _iLeft < _iRight;}

  可以这样写:binary_search(?, ?, ?, CompareInt); 

  ZC: 这里直接传的是 函数指针

 

1.2、(C++ 中 struct 和 class 是一回事)

1.2.1、

类似这样:

struct CompareFunctor{public:    bool operator() (const int& _iLeft, const int& _iRight)    {        return (_iLeft < _iRight);    }};

  可以这样写:binary_search(?, ?, ?, CompareFunctor()); 

  ZC: 这里传的是 struct的对象

 

1.2.2、

类似这样:

class CompareFunctor{public:    bool operator() (const int& _iLeft, const int& _iRight)    {        return (_iLeft < _iRight);    }};

  可以这样写:binary_search(?, ?, ?, CompareFunctor()); 

  ZC: 这里传的是 类对象

 

2、

 

转载于:https://www.cnblogs.com/cppskill/p/5254553.html

你可能感兴趣的文章
selenium-窗口切换
查看>>
使用vue的v-model自定义 checkbox组件
查看>>
[工具] Sublime Text 使用指南
查看>>
Hangfire在ASP.NET CORE中的简单实现方法
查看>>
Algorithm——何为算法?
查看>>
Web服务器的原理
查看>>
小强升职计读书笔记
查看>>
常用的107条Javascript
查看>>
#10015 灯泡(无向图连通性+二分)
查看>>
elasticsearch 集群
查看>>
忘记root密码,怎么办
查看>>
linux设备驱动归纳总结(三):1.字符型设备之设备申请【转】
查看>>
《黑客与画家》 读书笔记
查看>>
bzoj4407: 于神之怒加强版
查看>>
mysql统计一张表中条目个数的方法
查看>>
ArcGIS多面体(multipatch)解析——引
查看>>
css3渐变画斜线 demo
查看>>
JS性能DOM优化
查看>>
设计模式 单例模式 使用模板及智能指针
查看>>
c#的const可以用于引用类型吗
查看>>