tengo una función que requiere un puntero a función como argumento:C++ función se unen para su uso como argumento de otra función
int func(int a, int (*b)(int, int))
{
return b(a,1);
}
Ahora quiero utilizar una determinada función que tiene tres argumentos en esta función:
int c(int, int, int)
{
// ...
}
¿Cómo puedo enlazar el primer argumento de c
por lo que soy capaz de hacer:
int i = func(10, c_bound);
He estado mirando std::bind1st
pero parece que no puedo resolverlo. No devuelve un puntero a la función ¿no? Tengo plena libertad para adaptar func
por lo que cualquier cambio de enfoque es posible. Aunque me gustaría que el usuario de mi código pueda definir su propio c
...
tenga en cuenta que lo anterior es una simplificación feroz de las funciones reales que estoy usando.
El proyecto lamentablemente requiere C++98
.
aunque Necesitaba el código C++ 98, esta respuesta se convirtió fácilmente en su equivalente de impulso. – romeovs