对于bind
函数的介绍以及底层实现网上好多资料可以查,现在我记录一下bind
函数的使用。并记录一下placeholders::_1
的作用。
按我的理解通俗解释bind函数:
fun1(a,b,c,d);
func2 = bind(func1,t1,t2,t3,t4);
假设func1
函数需要有四个入参即a,b,c,d
;通过bind函数作用后,我们就可以通过调用func2
来调用fun1
,那如何给fun1
传参呢,当然也是通过fun2
来传参,t1
位置就代表传给fun1
的第一个参数,也就是参数a
,t2
位置就代表传给fun1的第二个参数,也就是参数b
,t3
位置就代表传给fun1
的第三个参数,也就是参数c
;t4位置就代表传给fun1
的第4个参数。…
记住,t1
位置处永远表示fun1
的第一个入参,t2
位置处永远表示fun1的第二个入参,t3
位置处永远表示fun1
的第三个入参。t4
位置永远表示fun1
的第四个入参…但是t
位置处,既可以是常量,也可以是变量(包括指针变量等)。有多种情况。