[C con Clase] problemas con Multiple Definición

jferia en uci.cu jferia en uci.cu
Mie Oct 21 21:23:20 CEST 2009


Hola Señor Leonel, debes hacer un uso correcto de la directiva #define

Ejemplo de como evitar que se defina una clase dos veces, así es para  
todos los tipos de datos:

#ifndef EJEMPLO_H_
#define EJEMPLO_H_

class ejemplo {
public:
	ejemplo();
	virtual ~ejemplo();
};

#endif /* EJEMPLO_H_ */

La directiva #define define una macro. Las macros proporcionan un  
mecanismo de reemplazo de tokens con o sin una serie de parámetros  
formales (parecidos a las funciones).

Puede que su programa presente un problema relacionado con este tema.

Saludos.




Leonel Florín Selles <leonel06033 en cfg.jovenclub.cu> ha escrito:

> hola amigos:
>
> bueno, ya hace tiempo que no paso por aquí, pero como ven siempre   
> hay dudas que
> nos hacen regresar, saludos.
>
> mi problema.
>
> Estoy haciendo un juego, y tengo varias clases ya creadas por mi incluidas
> dentro del main, y también tengo algunas clases incluidas dentro de otras
> clases, para que digo esto, porque dentro de una da las clases   
> creadas por mi,
> incluí un archivo *.c, generado por tileStudio un programa para   
> crear mapas de
> juegos, el cual contiene declaraciones de arreglos con los datos del mapa,
> arreglos también que hacen referencia a los limites puestos dentro del mismo
> mapa, entre otras declaraciones,  bueno, cuando incluyo ese archivo dentro de
> una clase y compilo me salen errores de multiple declaración, es decir que se
> han declarado varias variables con el mismo nombre, una de ellas es   
> el arreglo
> que contiene los datos del mapa dentro del archivo *.c incluido, pero la
> cuestion es que yo no estoy redeclarando nada en ningún lugar por ejemplo un
> error es este
>
> startevents.o:(.data+0x640): multiple definition of `MapImagesSeqLength'
> pacman.o:(.data+0x640): first defined here
>
> que puedo hacer amigos, ya no se que mas hacer, estoy utilizando   
> Kdevelop para
> programar sobre C++
>
> saludos.
>
>
>
>
>
> _______________________________________________
> Lista de correo Cconclase Cconclase en listas.conclase.net
> http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net
> Bajas: http://listas.conclase.net/index.php?gid=2&mnu=FAQ
>







Más información sobre la lista de distribución Cconclase