Fatal error en C++
Fermé
nadia hareb
Messages postés
110
Date d'inscription
lundi 18 février 2008
Statut
Membre
Dernière intervention
18 août 2010
-
14 déc. 2008 à 13:39
nayma Messages postés 19 Date d'inscription samedi 13 décembre 2008 Statut Membre Dernière intervention 8 juillet 2009 - 12 janv. 2009 à 14:04
nayma Messages postés 19 Date d'inscription samedi 13 décembre 2008 Statut Membre Dernière intervention 8 juillet 2009 - 12 janv. 2009 à 14:04
Bonjour,
j"arrive pas a compiler un programme en c++;5 message d"herreur de type : fatal errorC1014:fichier Include tros nombreux:profondeur = 1024
j"arrive pas a compiler un programme en c++;5 message d"herreur de type : fatal errorC1014:fichier Include tros nombreux:profondeur = 1024
10 réponses
natas666
Messages postés
259
Date d'inscription
samedi 13 décembre 2008
Statut
Membre
Dernière intervention
28 mars 2009
1
14 déc. 2008 à 13:42
14 déc. 2008 à 13:42
Il y'a trop d'include
nayma
Messages postés
19
Date d'inscription
samedi 13 décembre 2008
Statut
Membre
Dernière intervention
8 juillet 2009
14 déc. 2008 à 13:43
14 déc. 2008 à 13:43
moi aussi jai la meme
erreur
erreur
nadia hareb
Messages postés
110
Date d'inscription
lundi 18 février 2008
Statut
Membre
Dernière intervention
18 août 2010
14 déc. 2008 à 13:44
14 déc. 2008 à 13:44
alors comment faire j'ai besoin de ces includes
natas666
Messages postés
259
Date d'inscription
samedi 13 décembre 2008
Statut
Membre
Dernière intervention
28 mars 2009
1
14 déc. 2008 à 13:49
14 déc. 2008 à 13:49
Tu peux coller ces includes ici ?
natas666
Messages postés
259
Date d'inscription
samedi 13 décembre 2008
Statut
Membre
Dernière intervention
28 mars 2009
1
14 déc. 2008 à 13:51
14 déc. 2008 à 13:51
Je crois que que ton probleme est par rapport aux includes récursifs
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
nadia hareb
Messages postés
110
Date d'inscription
lundi 18 février 2008
Statut
Membre
Dernière intervention
18 août 2010
14 déc. 2008 à 13:52
14 déc. 2008 à 13:52
pardon?
nadia hareb
Messages postés
110
Date d'inscription
lundi 18 février 2008
Statut
Membre
Dernière intervention
18 août 2010
14 déc. 2008 à 13:54
14 déc. 2008 à 13:54
oui c'est ça ,mais comment resoudre ce prob
natas666
Messages postés
259
Date d'inscription
samedi 13 décembre 2008
Statut
Membre
Dernière intervention
28 mars 2009
1
14 déc. 2008 à 13:57
14 déc. 2008 à 13:57
J'ai eu le même problème avant.
J'attends que tu me colle l'entête de ton code source et l'entête de l'include appellé
J'attends que tu me colle l'entête de ton code source et l'entête de l'include appellé
nayma
Messages postés
19
Date d'inscription
samedi 13 décembre 2008
Statut
Membre
Dernière intervention
8 juillet 2009
>
natas666
Messages postés
259
Date d'inscription
samedi 13 décembre 2008
Statut
Membre
Dernière intervention
28 mars 2009
14 déc. 2008 à 13:59
14 déc. 2008 à 13:59
#include"Porte.h"
#include"Monstre.h"
#include"main.h"
class Porte;
class Monstre;
class Chambre{
Porte portes[4];
Monstre *mstr;
public:
Chambre();
~Chambre();
Chambre* getvs(Dir d)const;
void setvs(Dir d,Chambre* chbr);
Monstre* getmstr()const;
void setmstr(Monstre* m);
void setverou(Dir d,bool ver);
bool estverou(Dir d)const;
int nbreporteverou();
Chambre getvsacc()const;
void detruiremstr();
};
#include"Monstre.h"
#include"main.h"
class Porte;
class Monstre;
class Chambre{
Porte portes[4];
Monstre *mstr;
public:
Chambre();
~Chambre();
Chambre* getvs(Dir d)const;
void setvs(Dir d,Chambre* chbr);
Monstre* getmstr()const;
void setmstr(Monstre* m);
void setverou(Dir d,bool ver);
bool estverou(Dir d)const;
int nbreporteverou();
Chambre getvsacc()const;
void detruiremstr();
};
nayma
Messages postés
19
Date d'inscription
samedi 13 décembre 2008
Statut
Membre
Dernière intervention
8 juillet 2009
>
natas666
Messages postés
259
Date d'inscription
samedi 13 décembre 2008
Statut
Membre
Dernière intervention
28 mars 2009
14 déc. 2008 à 14:01
14 déc. 2008 à 14:01
l'autre fichier Chambre.h
et voiçi fichier Porte.h
#include"Chambre.h"
class Chambre;
class Porte
{bool verou;
Chambre * ouvre-sur;
public:
Porte();
Chambre* getovrs()const;
void setovrs(chambre* ch);
bool estveroup()const;
void setveroup(bool ver);
};
et voiçi fichier Porte.h
#include"Chambre.h"
class Chambre;
class Porte
{bool verou;
Chambre * ouvre-sur;
public:
Porte();
Chambre* getovrs()const;
void setovrs(chambre* ch);
bool estveroup()const;
void setveroup(bool ver);
};
natas666
Messages postés
259
Date d'inscription
samedi 13 décembre 2008
Statut
Membre
Dernière intervention
28 mars 2009
1
>
nayma
Messages postés
19
Date d'inscription
samedi 13 décembre 2008
Statut
Membre
Dernière intervention
8 juillet 2009
14 déc. 2008 à 14:09
14 déc. 2008 à 14:09
Ah, ça va, je pensais que dans ton fichier chambre.h (apr exemple) tu avais fais #include "chambre.h" donc il va s'inclure récursivement de manière infinie, d'où l'erreur !
Mais là, ça va, je ne vois pas de probleme!
include récursif dans ccc_shap.h
Il est indispensable de toujours mettre des gardes pour éviter les includes récursifs.
Moi, j'aurai pris des précautions en faisant comme ceci (exemple pour ton chambre.h):
#ifndef CHAMBRE_H_
# define CHAMBRE_H_
// code
#endif
Mais là, ça va, je ne vois pas de probleme!
include récursif dans ccc_shap.h
Il est indispensable de toujours mettre des gardes pour éviter les includes récursifs.
Moi, j'aurai pris des précautions en faisant comme ceci (exemple pour ton chambre.h):
#ifndef CHAMBRE_H_
# define CHAMBRE_H_
// code
#endif
natas666
Messages postés
259
Date d'inscription
samedi 13 décembre 2008
Statut
Membre
Dernière intervention
28 mars 2009
1
>
natas666
Messages postés
259
Date d'inscription
samedi 13 décembre 2008
Statut
Membre
Dernière intervention
28 mars 2009
14 déc. 2008 à 14:11
14 déc. 2008 à 14:11
excuse moi pour "include récursif dans ccc_shap.h" !!! je me suis trompé là dessus! j'ai marqué le nom de mon fichier.
nadia hareb
Messages postés
110
Date d'inscription
lundi 18 février 2008
Statut
Membre
Dernière intervention
18 août 2010
14 déc. 2008 à 14:03
14 déc. 2008 à 14:03
#include"Porte.h"
#include"Monstre.h"
#include"main.h"
class Porte;
class Monstre;
class Chambre{
Porte portes[4];
Monstre *mstr;
public:
Chambre();
~Chambre();
Chambre* getvs(Dir d)const;
void setvs(Dir d,Chambre* chbr);
Monstre* getmstr()const;
void setmstr(Monstre* m);
void setverou(Dir d,bool ver);
bool estverou(Dir d)const;
int nbreporteverou();
Chambre getvsacc()const;
void detruiremstr();
};
#include"Monstre.h"
#include"main.h"
class Porte;
class Monstre;
class Chambre{
Porte portes[4];
Monstre *mstr;
public:
Chambre();
~Chambre();
Chambre* getvs(Dir d)const;
void setvs(Dir d,Chambre* chbr);
Monstre* getmstr()const;
void setmstr(Monstre* m);
void setverou(Dir d,bool ver);
bool estverou(Dir d)const;
int nbreporteverou();
Chambre getvsacc()const;
void detruiremstr();
};
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 844
14 déc. 2008 à 14:10
14 déc. 2008 à 14:10
Salut,
C'est normal, c'est ce qu'on appelle de l'inclusion récursif. Il faut faire ce qu'on appelle un guard.
Tu dois rajouter trois lignes. Voici un exemple (j'ai mis les lignes à rajouter en gras).
Tu fais ça pour chacun de tes fichiers, en changeant bien évidemment PORTE_H en le nom de ton fichier h.
C'est normal, c'est ce qu'on appelle de l'inclusion récursif. Il faut faire ce qu'on appelle un guard.
Tu dois rajouter trois lignes. Voici un exemple (j'ai mis les lignes à rajouter en gras).
Tu fais ça pour chacun de tes fichiers, en changeant bien évidemment PORTE_H en le nom de ton fichier h.
#include"Porte.h" #include"Monstre.h" #include"main.h" #ifndef PORTE_H #define PORTE_H class Porte; class Monstre; class Chambre{ Porte portes[4]; Monstre *mstr; public: Chambre(); ~Chambre(); Chambre* getvs(Dir d)const; void setvs(Dir d,Chambre* chbr); Monstre* getmstr()const; void setmstr(Monstre* m); void setverou(Dir d,bool ver); bool estverou(Dir d)const; int nbreporteverou(); Chambre getvsacc()const; void detruiremstr(); }; #endif
nadia hareb
Messages postés
110
Date d'inscription
lundi 18 février 2008
Statut
Membre
Dernière intervention
18 août 2010
14 déc. 2008 à 14:15
14 déc. 2008 à 14:15
sachant que je travaille sur visual c++
bon la le nombre d"erreur c"est multiplié
bon la le nombre d"erreur c"est multiplié
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 844
14 déc. 2008 à 14:23
14 déc. 2008 à 14:23
Désolé, j'ai mal placé le #define et le #ifndef. J'ai corrigé mon erreur dans le post précédent. Re teste. ;)
nayma
Messages postés
19
Date d'inscription
samedi 13 décembre 2008
Statut
Membre
Dernière intervention
8 juillet 2009
12 janv. 2009 à 14:04
12 janv. 2009 à 14:04
je dois developper un logiciel de chat en c.et je me suis bloqué
si quel qu'un peut m'aider je serai ravi
si quel qu'un peut m'aider je serai ravi
14 déc. 2008 à 13:44
152 erreur
14 déc. 2008 à 13:46
ya bcps de fichiers qui l'un utilise l'autre