問題タブ [boost-bind]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 参照パラメーターを持つクラスにネストされたメンバー関数でブーストバインドを使用する方法は?
boost::bind
クラスメソッド内で使用しようとしましたが、参照パラメーターを使用して別のクラスメソッドを呼び出します。
この構文では、VC++ 2010 を使用してコンパイルしましたがstring
、参照ではなくコピーとして渡されました。次に、追加しようとしたところboost_ref( _1 )
、次のようなコンパイラ エラーが発生しました。
更新
実際には、boost::ref を必要とせずに機能しました。不謹慎で本当に申し訳ありません。いつもお読みいただきありがとうございます。
何か案が?
c++ - 複合型で Boost.Bind を使用するにはどうすればよいですか?
私は を持っており、このマップstd::map<int, std::pair<short, float> >
で最小のものを見つける必要があります。short
これにどのように使用できboost::bind
ますstd::min_element()
か?
boost::lambda
?
c++ - boost::bindと一時変数への参照
私がメソッドを持っているとしましょう:
boost :: functionを作成できますか:
f
ここで、tempは、が呼び出される前に削除されたchar*です。
c++ - 番号。boost::bind の引数の数
boost::bind() に渡せる引数の最大数
c++ - 「オプションの引数」を使用してboost::functionを定義して使用する方法は?
ある種のコールバックメソッドを必要とするクラスを使用しているので、boost::functionを使用して関数ポインターを格納しています。
コールバックに1つのオプションの引数が必要ですが、boost :: functionではオプションの引数の種類を定義できないことがわかったので、次のコードを試してみましたが、うまくいきました。
私はそれが機能したことにショックを受けました、質問はそれが機能するべきか、そしてそれは合法ですか?
より良い解決策はありますか?
c++ - メンバー関数を渡して呼び出す (boost::bind / boost::function?)
おそらく恥ずかしいほど単純な問題があります。クラスでメンバー関数を渡し、呼び出します。BOOST バインド (およびまたは関数) を使用したいのはわかっていますが、その概念はまだよく理解していません。
次のコードは、問題を抱えてコンパイルおよび実行されます。しかし、「f3」関数を非静的クラス関数に変更したい場合は、楽しみが始まります。
さて、変更後
に
コンパイラは満足せず、「エラー: 'Test::f2()' の呼び出しに一致する関数がありません」と通知します。
boost::bind および boost::function に関する多くの SO 投稿を読んだ後、f2() の定義と、f1() が f2() を呼び出して、f3() を呼び出すターゲットとして指定する方法を変更する必要があると思いますが、それとは別に...私が試したboost::bindとboost関数のすべての組み合わせは、惨めにコンパイルに失敗しました。
これをどのように書く必要がありますか?おまけの質問として、boost::bind と boost::function に関する簡単な入門書はありますか? BOOST のドキュメントはあまり役に立ちませんでした。
B.
boost - データ メンバー コールバック動作へのブースト バインド
誰かがこのコードを説明してもらえますか?
なぜbar
コンパイルの定義が行われ、その結果は何ですか?
編集:foo()
期待どおりに動作し、 を呼び出しますc.member()
が、bar()
動作しません。