У меня есть минимизатор одномерной функции. Прямо сейчас я передаю ему указатели на функции. Однако многие функции имеют несколько параметров, некоторые из которых фиксированы. Я реализовал это, используя такие функторы
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
? Существует ли простой шаблон для этого, который позволяет избежать стандартного шаблона функторов, но позволяет привязывать несколько параметров?