私はいくつかの引数を持つメンバ関数を持っています。私はそれを特定のオブジェクトインスタンスにバインドし、別の関数に渡したいと思います。パラメータの変更の数が、私はすべてのバインドが同様に呼び出しを変更する必要があるとき、1のために -std :: bindメンバー関数をオブジェクトインスタンスにバインドするための短い方法
// actualInstance is a MyClass*
auto callback = bind(&MyClass::myFunction, actualInstance, _1, _2, _3);
をしかし、これは少し不器用です:私はプレースホルダでそれを行うことができます。しかし、さらに、すべてのプレースホルダをタイプするのは非常に退屈です。本当に必要なのは、オブジェクト参照を含む「関数ポインタ」を便利に作成することだけです。
だから、私は何をできるようにしたいのようなものです:
auto callback = objectBind(&MyClass::myFunction, actualInstance);
誰もがこれを行うにはいくつかの素晴らしい方法を知っていますか?
は 'バインド(&MyClassの:: MyFunctionを、actualInstance、STD ::プレースホルダ::すべて)'この –
[OK]を実行するような何かをできるようにする提案がなされてきた - それはありませんでしたなぜあなたは知っています標準に含まれていますか? –
先月だけ提案されていたので、まだ誰もそれを実装していませんでした。まだ –