bind使用
使用bind绑定函数与输入。其中placeholders::_1表示第一个参数,因使用了命名空间简写为_1。程序例子为打印10>5>3。
#include <iostream>
#include <algorithm>
#include <vector>
#include <functional>
using namespace std;
bool MyPredict(int val1, int val2)
{
return val1>val2;
}
bool MyAnd(bool val1, bool val2)
{
return val1&&val2;
}
int main()
{
using namespace placeholders;
auto x1 = bind(MyPredict,_1, _2);
auto x2 = bind(MyPredict,10, _1);
auto x3 = bind(MyAnd, x1, x2);
cout<<x3(5,3)<<endl;
}
输出结果
1