如果我绑定一个这样的函数,在绑定时使用占位符
std::bind(memberFunctionPointer, objectPointer, _1, _2);
是否有可能"重新绑定"它后来替换部分/全部占位符,但没有调用函数?我希望能够传入一些参数然后存储它,以便稍后调用。 (延迟回调)
答案 0 :(得分:8)
您可以再次bind
:
auto f = std::bind(memberFunctionPointer, objectPointer, _1, _2);
auto g = std::bind(f, val1, val2);
g(); // (objectPointer->*memberFunctionPointer)(val1, val2)