12
Boost :: bindとBoost Phoenix :: bindの違いは何ですか?Boost :: bindとBoost Phoenix :: bindの違いは何ですか?
Boost :: bindとBoost Phoenix :: bindの違いは何ですか?Boost :: bindとBoost Phoenix :: bindの違いは何ですか?
phoenix::bind
は、lambda::bind
のように、指定された関数を呼び出す必要があることを記録する式テンプレートを返す関数です。これらはそれぞれphoenixとlambdaと一緒に動作するように設計されています。結果として、より多くのものが含まれています。同様に、それらが返すタイプはすべての可能な演算子をオーバーロードし、後でそれぞれのアクションを記録して実行することができます。
boost::bind
は「ちょうど」バインダーです。関数をバインドし、関数呼び出し演算子のオーバーロードが発生した型を返します。
[フェニックス3.0](http://www.boost.org/doc/libs/1_47_0/libs/phoenix/doc/html/index.html)(ブースト1.47でリリース)、「フェニックス:: bind'は 'boost :: bind'との互換性があります(http://www.boost.org/doc/libs/1_47_0/libs/phoenix/doc/html/phoenix/modules/bind/compatibility_with_boost_bind.html)。 。 litbの応答を覚えておいてください。これは以前に 'boost :: bind'を使った場所で' phoenix :: bind'を使うことができるという意味ですが、他の方法では動作しないと思います。 'boost:bind'をラムダの中に入れ、' phoenix :: bind'のように動作すると期待しています)。 –