私は1次元の関数最小化関数を持っています。今は関数ポインタを渡しています。しかし、多くの関数には複数のパラメータがあり、そのうちのいくつかは固定されています。私はこのようなファンクタを使ってこれを実装しましたどのようにboost :: bindオブジェクトを関数に渡しますか?
template <class T>
minimize(T &f) {
}
Functor f(param1, param2);
minimize<Functor>(f);
しかし、ファンクタの定義には多くの種類があります。 Boost :: bindはよりきれいに見えます。私が行うことができるように:
minimize(boost:bind(f,_1,param1,param2))
は私がクリアしていないよしかし、私のminimize
宣言はboost::bind
を使用してのように好きすべきか。どのタイプのオブジェクトがboost::bind
ですか?ファンクタの定型句を避け、複数のパラメータバインドを可能にする簡単なパターンがありますか?