我的计划是构建几个拥有预定义“回调挂钩”的侦听器类。
在下面的示例中,类Foo
有一个名为onChange
的“回调挂钩”。它将在构造期间设置为默认回调函数。它也可以设置为提供正确接口的任意函数,如对象f1
和函数callback()
所示。
问题是当我想在for循环中调用对象成员onChange
时,编译器说我提供了很多参数。我知道我没有向std::mem_fn
提供成员函数的问题,而是一个作为函数包装器的对象成员。
如何在不使用std::function
的情况下将参数传递给类Foo
的{{1}}成员对象,并使用std::bind
而不是如示例中所示?
std::mem_fn