2011-12-08 6 views
2

引数リストを持つboostメソッドをバインドしようとしていますが、バインディング時に定数としてではなく、シグナルを出力するときに引数の値を指定します。定数でない定数を持つboost :: bindメソッド

boost::bind(&myClass::myMethod, this, _1)); 

私の理解では、引数のための場所を保持しますが、私は呼び出し時にそれを指定させるための_1手段です。これは私にコンパイルエラーを通知します。_1は宣言されていません。そして、定数を使用して呼び出し時に引数を指定すると、定数が使用されます。

ブーストマニュアルでは、これを行う方法について(メソッドとは対照的に)、_1があります。メソッドでこれを行う方法はありますか?事前

+0

あなたはどのファイルを含んでいますか? –

+0

あなたのコードは大丈夫です。より多くの文脈が必要です。問題を示す完全な最小限の例を提供してください。 –

+0

[Boostマニュアルでは、メソッドについても説明しています。](http://www.boost.org/doc/libs/1_48_0/libs/bind/bind.html#with_member_pointers)問題は他の場所にあります。 –

答えて

0

おかげであなたはおそらく_1がオブジェクトであるqualification-名前空間を忘れてしまった、そしてそれは、ルックアップを修飾する必要があります。

+3

Boostプレースホルダはグローバル名前空間にあります。他のライブラリは名前空間にプレースホルダを置くが、boostはしない。 –

関連する問題