函数对象的思想就是把函数当参数。
一个函数对象可以是函数名、函数指针还有重载了()类的对象。个人感觉这个就是把函数当成一个参数进行使用,通过这个参数完成一定的处理过程,而普通的参数却没有处理过程。
这里还涉及到了3个概念:1、generator;2、unary function;3、binary function。
1接受0参数,2接受1单数,3接受2参数。
由此引申出两个概念,如果unary function返回的是bool那么它被称之为predicate,如果binary function返回的是bool它被称之为binary predicate。其中,binary predicate可以转化为unary function,方法是使用类的构造函数帮助binary predicate构造一个参数出来,剩下的参数就是unary function的参数了。在我看来这就是函数调用的一种形式而已,如果说要上升得到什么理论高度,我还真没达到那种程度。
函数对象
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- C++ lambda表达式与函数对象 lambda表达式是C++11中引入的一项新技术,利用lambda表达式可以...
- 函数 基本概念函数是由事件驱动的或者当它被调用时执行的可重复使用的代码块。JavaScript 函数语法:函数就是...