/
Inicio :: Foros

 F.A.Q.F.A.Q.                  Conéctese para revisar sus mensajesConéctese para revisar sus mensajes   

primitivas ifndef??

 
      Índice del Foro elrincondelc.com -> C/C++ en General
Ver tema anterior :: Ver siguiente tema  
AutorMensaje
raul_denia



Registrado: 27 Jun 2007
Mensajes: 6

MensajePublicado: 11/10/2007 6:24 am
Título: primitivas ifndef??

Hola, resulta que tengo un programa en c++, con diferentes archivos y sus cabeceras.

Todas las cabeceras tiene las primitivas #ifndef... puestas para evitar que si dos archivos incluyen la misma cabecera y luego uno incluye a otra, aparezca el error del tipo "...declaracion en multiples zonas...".

Pues bien, mi problema esta en que aun teniendo los #ifndef colocados, con dos archivos que se incluyen uno a otro mutuamente, me aparece el error.

¿Alguna idea del porque del error?

Gracias.
Volver arriba
cheroky



Registrado: 22 Sep 2005
Mensajes: 1372
Ubicación: En ecx esperando un call

MensajePublicado: 11/10/2007 7:56 am
Título:

No se si tomarlo como un halago hacia este sito y piensas que aquí somos tan gurús que (como el diablo por viejo) podemos llegar a adivinar los problemas e incluso mas allá, las soluciones a los mismos.

Dejándome de rollos... ¿puedes al menos decir que te ocurre? cuanta mas información aportes, mejor para ti y mas cómodo para el resto de los usuarios, esto pasa por reportar el lenguaje, errores del compilador...etc.



S2.
_________________
- Explícito es mejor que implícito.
- Simple es mejor que complejo.
- Complejo es mejor que complicado.
- Plano es mejor que anidado.
- Ralo es mejor que denso.
Volver arriba
Karman



Registrado: 15 Oct 2005
Mensajes: 308

MensajePublicado: 12/10/2007 8:18 am
Título:

si tienes dos archivos de cabeceras que se incluyen mutuamente tienes que tener en cuenta un par de cosas:

1º que no exista la definición de ninguna variable (únicamente tipos de variables)... que es básicamente el error que mencionaste anteriormente "...declaración en múltiples zonas..."

2º Si definís clases y estas clases dependen de sí mismas (una deriva de la otra pero la otra guarda un puntero a la primera) tienes que hacer una predefinición de una de ella antes de la otra...

///////fichero 1

class 1;

class 2{
class1 var;
};

///////fichero 2

class1:class2{ };

Espero te sirva de algo...

S2
_________________
www.inexinferis.co.nr

-. Karman .-
Volver arriba
      Índice del Foro elrincondelc.com -> C/C++ en General
Página 1 de 1Todas las horas están en GMT - 8 Horas

 
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas

(c) ElRincondelC.com

Un proyecto de UrlanHeat.com