- 函数对象首先是一个对象,他的类只不过重载了()【调用操作符】而已。很简单。
使用它第一需要定义一个类,并重载(),如下:
class FuncObj{
public:
int operator()(int a, int b)//操作符()重载
{
return a+b;
}
}; 他的一个应用就是作为函数的形参,以取代函数指针。
定义一个函数,形参为对象(重载了()的类的类对象) :
int addFunc(int a, int b, FuncObj& func){
int sum = func(a, b);
return sum;
}调用函数:
FuncObj obj;
cout < addFunc(4,6,obj);//输出为10.函数对象在STL中应用十分广泛。
C++ 函数对象
最新推荐文章于 2022-06-18 20:39:51 发布