引数として関数ポインタを必要とする関数があります。
int func(int a, int (*b)(int, int))
{
return b(a,1);
}
ここで、この関数で3つの引数を持つ特定の関数を使用したいと思います。
int c(int, int, int)
{
// ...
}
の最初の引数をバインドして、次のことができるようにするにはどうすればよいc
ですか。
int i = func(10, c_bound);
私はずっと見てきましたstd::bind1st
が、それを理解できないようです。関数ポインタを返しませんよね?私には適応する完全な自由がfunc
あるので、アプローチの変更が可能です。Althoug私のコードのユーザーが自分のコードを定義できるようにしたいと思いますc
...
上記は、私が使用している実際の関数を非常に単純化したものであることに注意してください。
プロジェクトは悲しいことにを必要としC++98
ます。