1
30
首先,函子可以包含内部状态;对以下情况有效的状态
这个调用
仅用于函数对象。你可以添加
其次,编译器可以内联调用functor;它不能对函数指针执行相同的操作。这就是为什么C++
|
2
1
functor甚至可以在一定程度上模拟lambda表达式(如果必须使用C++11/C++14之前的旧编译器),因为它们可以有单独的状态(例如作为成员变量)。
或作为lambda
函数指针只能获取参数,但是无状态的,除非它们访问任何全局变量(这是非常糟糕的设计和危险的)。
|
rookie · 检查函数模板的所有参数包参数是否属于int 1 年前 |
ivaigult · -W转换和隐式字符串到布尔类型转换 1 年前 |
rainer · 后台插入程序的初始化 1 年前 |
Community wiki · 以理智、安全和高效的方式复制文件 1 年前 |
Shefali Kanaujia · 对C中向量的向量进行排序++ 1 年前 |
Ma Joonyoung · 粗粒度和细粒度链表的时间比较 1 年前 |