functor
看八股文途中无意间看到仿函数,特意去了解了下
仿函数(Functor)指的是重载了()
运算符的类,对象可以像函数一样被调用。
适用场景
- 当一个函数多次调用需要的许多参数都一致时,可以将那些不怎么变化的参数作为成员变量在初始化时传入,变化的量作为仿函数的参数调用时传入
此外,仿函数可以被视作函数指针。利用这点以及类的继承,可以实现类似函数继承,STL里就用到了这个技巧(比如functional
里的greater
和less
)。
functor
https://jhex-git.github.io/posts/786566374/