inclusión condicional
Publicado por Franco Cedillo (36 intervenciones) el 23/09/2005 12:49:15
Hola,
Tengo una consulta sobre la inclusión condicional.
En más de un archivo *.h he incluido "#include Lib1.h"
Y para que no hallan errores uso #if defined...
Pero no funciona esta solució
Los tres archivos *.h
// Lib1.h
/* variables globales */
int a,b,c;
// Lib2.h
#if ! defined (CONTROL)
#include "Lib1.h"
#define CONTROL 0
#endif
// inicializa variables globales
void func1(void)
{
a=1;
b=2;
c=3;
}
// Lib3.h
#if ! defined (CONTROL)
#include "Lib1.h"
#define CONTROL 0
#endif
// inicializa otra vez
void func2(void)
{
a=28;
b=35;
c=47;
}
//este es el archivo principal
#inlcude <stdio.h>
#include <iostream.h>
#include "Lib2.h"
#include "Lib3.h"
void main(void)
{
func1();
printf("a=%d b=%d c=%d",a,b,c);
func2();
printf("a=%d b=%d c=%d",a,b,c);
}
Voy a probar otros ejemplos
esto lo realizo en el ide borland c++ v3.1
Tengo una consulta sobre la inclusión condicional.
En más de un archivo *.h he incluido "#include Lib1.h"
Y para que no hallan errores uso #if defined...
Pero no funciona esta solució
Los tres archivos *.h
// Lib1.h
/* variables globales */
int a,b,c;
// Lib2.h
#if ! defined (CONTROL)
#include "Lib1.h"
#define CONTROL 0
#endif
// inicializa variables globales
void func1(void)
{
a=1;
b=2;
c=3;
}
// Lib3.h
#if ! defined (CONTROL)
#include "Lib1.h"
#define CONTROL 0
#endif
// inicializa otra vez
void func2(void)
{
a=28;
b=35;
c=47;
}
//este es el archivo principal
#inlcude <stdio.h>
#include <iostream.h>
#include "Lib2.h"
#include "Lib3.h"
void main(void)
{
func1();
printf("a=%d b=%d c=%d",a,b,c);
func2();
printf("a=%d b=%d c=%d",a,b,c);
}
Voy a probar otros ejemplos
esto lo realizo en el ide borland c++ v3.1
Valora esta pregunta


0