我有两个要绑定的类成员函数。我必须传递占位符,因为第二个类将自行设置参数。
假设我有课
class slave
{
public:
void func1();
void func2(bool a, bool b);
};
和第二班
class master
{
public:
std::function<void(void)> func1;
std::function<void(bool, bool)> func2;
};
我可以这样绑定func1和func2
master Master;
slave Slave;
Master.func1 = std::bind(&slave::func1, &Slave);
Master.func2 = std::bind(&slave::func2, &Slave, true, false);
但是如何绑定占位符?
没有绑定到类成员函数,我只能写:
std::function<void(bool, bool)> func2;
func2 = std::bind(&slave::func2, &Slave, std::placeholders::_1, std::placeholders::_2);
但我不会写
Master.func2 = std::bind(&slave::func2, &Slave, std::placeholders::_1, std::placeholders::_2);
如何使用占位符在类成员函数之间进行绑定?