he hecho un programa para hacer andar a 'n' personajes por un escenario. el caso es que empece con un archivo class.h donde definia las clases frame y sprite y las funciones que necesitaba; despues el archivo class.cpp, donde implementaba las funciones que no eran get-set para manejar los graficos. despues en mi main.cpp le meti el codigo para mover a un personaje por la pantalla cargando las animaciones correspondientes. el caso es que ahora que me funciona todo, lo que quiero es modularizarlo un poco y la parte de carga de imagenes, en la que asocio cada frame de un array de 50 su imagen correspondiente y luego añado al sprite cada uno de los frames, quiero ponerla en otro archivo para que me ahorre espacio en el main.cpp, porque para un solo personaje no es mucho problema, pero cuando quiera cargar objetos, mas personajes, escenario y tal, me puede quedar un programa gigante. tambien quiero hacer lo mismo con la parte de movimiento del personaje. el caso es que creo un archivo nuevo llamado cargarGraficos.cpp, con una funcion void cargarGraficos(int personaje) { ... }, las variables de sprite y frame las declaro en el class.h y añado a cargarGraficos.cpp el class.h. ahi deberia de funcionar segun creo yo, pero me da un error que no entiendo:
- Código: Seleccionar todo
multiple definition of `frame'
first defined here
multiple definition of `sprite'
first defined here
ld returned 1 exit status
F:\PROGRAMACION\programacion C\proyectos cpp\moverCrupier\Makefile.win [Build Error] [moverCrupier.exe] Error 1
dice que hay multiples definiciones de mi variable frame y de mi variable sprite, pero no es asi. solo estan declaradas en el class.h para que sean globales a todos los archivos que use sin tener que andar pasandolas constantemente...
alguna idea? uso DEV-CPP 4.9.9.2
muchas gracias por adelantado
atentamente
maije