您的位置:首页 > 编程语言 > C语言/C++

C++标准库定义的函数对象及使用

2014-06-05 11:35 190 查看
标准库定义了一组表示算数运算符、关系运算符和逻辑运算符的类,每个类分别定义了一个执行命名操作的调用运算符。
目前想到的使用场景是把这些类定义作为回调函数使用,我们就不必自己去实现。比如vector排序:
vector<int> vec{3,5,7,8,9,43};
    sort(vec.begin(), vec.end(), greater_equal<int>());


以下运算符默认只有两个参数。
plus<Type>
minus<Type>
multiplies<Type>
divides<Type>
modulus<Type>
negate<Type>

equal_to<Type>
not_equal_to<Type>
greater<Type>
greater_equal<Type>
less<Type>
less_equal<Type>
greater_equal<int> fun;
    cout<<fun(3,1)<<endl; //结果是1


逻辑运算符:

logical_and<<#class _Tp#>>
logical_not<<#class _Tp#>>
logical_or<<#class _Tp#>>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐