Funciones C++!!!

panchox77
25 de Enero del 2004
El problema q tengo es el siguiente, tengo ya creada una lista enlazada, y lo q quiero es acceder a la misma a través de distintas funciones realizadas en modulos diferentes.
El problema aparce cuando yo hago lo siguiente:
creo una nueva ventana .h en donde pongo el encabezado, y una .cpp donde desarrollo la funcion.
el problema surge ya q quiero pasar la funcion como parametro y no me la reconce...q tengo q hacer????se la puede declarar en el .h???
me seria de mucha utilidad q me manden una solucion concreta y detallada paso a paso y si es posible algun ejemplo.
Desde ya muchas [email protected]


XXX
25 de Enero del 2004
mira supongamos que tienes un archivo de encabezado donde tienes implementadas las funciones.

en el archivo donde las vas a invocar tienes que poner la siguiente directiva al inicio: por ejemplo que la unidad se llama Mi_Unidad

#include "Mi_Unidad.cpp"
.
.
.

chuidiang
25 de Enero del 2004
Si tu problema es que te da un error de "linkado" con esa función, la solución puede ser la que te comenta XXX. De todas formas, es mejor solución compilar todos los ficheros .cpp en una sola orden, de esta forma tampoco te dará el error de linkado

$ compila fichero1.cpp fichero2.cpp fichero3.cpp

Si lo que quieres es pasar esa función como parámetro, puedes hacerlo. Lo mejor es que sea una función o un método estático de una clase. También puede ser un método normal, pero es algo más liada la sintaxis.

Si es una función, el tipo de la función es el siguiente

void (*)(parametros);

Una función que reciba como parámetro otra función se declararía asi

void funcion ( void (* f) (parametros));

f es la variable (puntero) que apunta a la función.

dentro de funcion() puedes llamar a f asi

f (parametros);

No sé si es esto lo que necesitas ...

Se bueno