[Previo por Fecha] [Siguiente por Fecha] [Previo por Hilo] [Siguiente por Hilo]
[Hilos de Discusión] [Fecha] [Tema] [Autor]Francisco Benavides wrote: > > header.hh > --------- > > #define MAX_FAULTS = 50; > #define MAX_CALL = 100; > > typedef struct { > ..... > ..... > ..... > } Auto_Calls; > > int someVariable = 0; > char Fault_List[MAX_FAULTS][128]; > static Auto_Calls Auto_Call[MAX_CALL]; > > static void > Auto_Fail_Call( const unsigned int ); > > > header.hh:114: parse error before `=' > header.hh:136: parse error before `=' > program.cc: In function `void Auto_Fail_Call(unsigned int)': > program.cc:423: `Auto_Call' undeclared (first use this function) > program.cc:423: (Each undeclared identifier is reported only once > program.cc:423: for each function it appears in.) > > Estoy usando GNU C++ 2.8 sobre Solaris/Sparc. > > Gracias/Francisco :) Espero y aun te sirva pues después de 5 días llegaron algunos correos, la custión es que la macro #define se usa asi: #define MAX_FAULTS 50 #define MAX_CALL 100 Es tan solo un alias lo que necesitas no una asignación, acuerdate que el preprocesador de C tan solo va a sustituir las etiquetas MAX_* por sus valores antes de comenzar a compilar. o si quieres el buen estilo C++ (eso dicen en los libros) const int MAX_FAULTS = 50, MAX_CALL = 50; que te hace un chequeo más estricto de datos.