标准库定义了两个绑定器适配器:bind1st和bind2nd。每个绑定器接受一个函数对象和一个值。bind1st将给定值绑定到二元函数对象的第一个实参,bind2nd将给定值绑定到二元函数对象的第二个实参。例如,为了计算一个容器中所有小于或等于10的元素的个数,可以这样给count_if传递值:
count_if (vec.begin(), vec.end(), bind2nd(less_equal<int>(), 10));
详细代码可查看 boost源码或者 vc源码 (functional)