仿函数学习(转载)

仿函数(functors),在C++标准中采用的名称是函数对象(function objects)就是类里重载()操作,实现用类伪装成函数,实现对应功能。比如可以藉此访问成员变量,让一元函数完成二元或多元函数的功能。以及与STL算法搭配使用。

还有比较神奇的语法:count_if(myVector.begin(), myVector.end(), ShorterThan(length));这里ShorterThan(length)是类的对象,却也可以调用operator()函数!

这一操作在https://www.jianshu.com/p/b4acf77af5fe这篇文章中多次使用。

而且结构体内也是可以实现仿函数。

学自:https://www.cnblogs.com/decade-dnbc66/p/5347088.html

https://blog.csdn.net/u010710458/article/details/79734558

posted @ 2020-06-23 15:40  banlcer  阅读(118)  评论(0编辑  收藏  举报