Tengo un minimizador de función unidimensional. En este momento estoy pasando indicadores de función. Sin embargo, muchas funciones tienen múltiples parámetros, algunos de los cuales se mantienen fijos. Lo he implementado usando functors como¿Cómo se pasa boost :: bind objects a una función?
template <class T>
minimize(T &f) {
}
Functor f(param1, param2);
minimize<Functor>(f);
Sin embargo, la definición de functor tiene muchas crud. Boost :: bind se ve más limpio. Por lo que podía hacer:
minimize(boost:bind(f,_1,param1,param2))
Sin embargo no me queda claro lo que mi declaración minimize
gustaría como el uso de boost::bind
. ¿Qué tipo de objeto es boost::bind
? ¿Existe un patrón fácil para esto que evite la repetición de los funtores, pero que permita la vinculación de múltiples parámetros?