行业知识
【第十天】C++函数对象/仿函数、谓词、适配器及常见algorithm算法
2026-10-22 02:33:09
来源:互联网转载
一、函数对象
�� 重载了函数调用运算符()的类 实例化的对象叫函数对象,也叫仿函数。
- 如果函数对象 有一个参数 叫:一元函数对象/仿函数
- 如果函数对象 有二个参数 叫:二元函数对象/仿函数
- 如果函数对象 有三个及以上参数 叫:多元函数对象/仿函数
注意:
1.函数对象(仿函数)是一个类,不是一个函数。
2.函数对象(仿函数)重裁了"()"操作符使得它可以像函数一样调用。(仿函数概念由来)
二、谓词
返回值为bool类型的普通函数或仿函数 都叫谓词。
如果谓词 有一个参数 叫:一元谓词
如果谓词 有二个参数 叫:二元谓词
一般没有多元谓词
1、一元谓词
用于查找:(头文件algorithm提供find_if算法策略)
2、二元谓词
用于排序: (头文件algorithm提供sort算法策略)
#include #include#includeusing namespace std;bool myGreater(int n1,int n2){ return n1>n2;}class MyGreater{public: bool operator()(int n1,int n2) { return n1>n2; }};void printVectorInt(vector v){ vector::iterator it; for(it=v.begin();it!=v.end();it++) { cout