bind函数定义在头文件functional中。
调用bind的一般形式为:
auto newCallable = bind(callable, arg_list);
arg_list中参数可能包含形如_n的名字,其中n是一个整数。这些参数是占位符。
其中一个例子为:
auto check6 = bind(check_size, _1, 6);
由于bind拷贝其参数,而我们不能拷贝一个ostream。如果我们希望传递给bind一个对象,而又不拷贝她,就必须使用标准库的ref函数:
for_each(word.begin(), word.end(), bind(print, ref(os), _1, ' '));
其中os为ostream对象。