Quiero tener una clase que tiene como miembro de un puntero a una funciónC++ miembro de la clase puntero a la función global
aquí es el puntero de función:
typedef double (*Function)(double);
aquí es una función que se ajusta a la definición puntero de función:
double f1(double x)
{
return 0;
}
aquí es la clase definion:
class IntegrFunction
{
public:
Function* function;
};
y en algún lugar de la función principal que quiero hacer algo como esto:
IntegrFunction func1;
func1.function = f1;
embargo, este código no funciona.
¿Es posible asignar a un miembro de la clase un puntero a una función global, declarado como se indicó anteriormente? ¿O tengo que cambiar algo en la definición del puntero a la función?
Gracias,
¿De qué manera no funciona? –
¿Cómo "no funciona"? ¿Obtiene un error de compilación? Si es así, ¿qué es? –
La respuesta puede ser más fácil para nosotros encontrarla si nos proporciona un ejemplo completo. Estás * tan * cerca, solo necesitaría unas pocas líneas más para completarlo. Además, ¿puedes decirnos a qué te refieres con "no funciona"? ¿Recibes un error del compilador? ¿Linker? ¿Obtienes un comportamiento en tiempo de ejecución diferente de lo que esperas? –