[MontelLUG] Problema include/dipendenze in programma C

Samuele samuele.zanin a tiscali.it
Gio 16 Lug 2015 12:28:00 CEST


Ho un problema con gli include in un programma C/C++.
Non sono esperto di C, quindi ho bisogno di qualche indicazione.

Ho un file ControlloBatteria.h
con un'unica riga:

void ControlloTestBatteria(TStatoSensore &DatiSensoreRete);

che compilando mi da "Incomplete types is not allowed" e altri messaggi 
che si riferiscono al fatto che TStatoSensore non è definito.

Il corpo della funzione è definito in ControlloBatteria.cpp.

TStatoSensore è definito in SensoriRete.h

class TStatoSensore {
     public:
     int LivelloBatteria;
     int IdSensore;

ecc. ecc.

ed usato ampiamente in SensoriRete.cpp

Nel main.cpp ho all'inizio:

#include "VariabiliGlobali.h"
#include "SensoriRete.h"
#include "InputDigitali.h"
#include "ElaborazioneStato.h"
#include "Configurazione.h"
#include "ControlloBatteria.h"
#include "Seriale.h"


Se all'inizio di ControlloBatteria.h aggiungo:
#include "SensoriRete.h"

ottengo: "Invalid redeclaration of type name TStatoSensore".

ControlloBatteria.cpp
ha queste include:
#include "VariabiliGlobali.h"
#include "ControlloBatteria.h"

VariabiliGlobali.h non ha tra le include SensoriRete.h

Il tutto è compilato usando un ambiente online che si appoggia sul gcc e 
toolchain gnu-arm per crosscompilare e altri casini che non ho indagato.

Non so dove sbattere la testa.




Maggiori informazioni sulla lista montellug