std::function<>可以用于保存函数,包括仿函数,全局函数,成员函数,静态成员函数,lamdba表达式,绑定函数可以用std::bind绑定
#includeusing namespace std;std::functionfunctional;
int TestFunc(int a){
return a;
}
auto lambda = [](int a)->int{ return a; };
// auto lambda = [](int a)->int{return a;};
class Functor{
public:
int operator()(int a){
return a;
}
};
class TestClass{
public:
int ClassMember(int a){
return a;
}
static int StaticMember(int a){
return a;
}
};
std::placeholders::_1 代表占位符,指第一个参数不变,也可以给第一个参数指定固定值
网友评论