仿函数就是函数对象,是一个对象具有函数性质,使这个对象能够像函数一样被调用(就是生成该对象的类中重载了()运算符)。一般仿函数要和STL中的算法相结合使用。
仿函数分为两种:第一种为一元仿函数,就是功能类似于一元操作符的函数(例如取反功能)。第二种为二元仿函数,功能类似于二元操作符的函数(加号)。
ST中内建的仿函数:
1. 算术类的仿函数:
plus<T> : 加法
minus<T> : 减法
multiples<T > : 乘法
divide<T > : 除法
modulus<T > : 模去
negation<T> : 取反
关系运算类的仿函数:
equal_to<T> : 等于
not_equal_to<T> : 不等于
greater<T> : 大于
greater_equal<T> : 大于等于
less<T> : 小于
less_equal<T> : 小于等于
逻辑运算仿函数:
logical_and<T> : and运算
logical_or<T> : or运算
logical_not<T> : 逻辑取反运算