[ URGENT ] Problème d'inclusion récursifs pour classes interdépendantes ( Fils&l

beepmaster Messages postés 12 Date d'inscription lundi 30 juillet 2001 Statut Membre Dernière intervention 20 novembre 2008 - 18 mai 2002 à 23:41
beepmaster Messages postés 12 Date d'inscription lundi 30 juillet 2001 Statut Membre Dernière intervention 20 novembre 2008 - 19 mai 2002 à 20:10
J'ai un petit problème d'include en C++, j'espère que vous pourrez m'éclairer. J'ai passé pas mal de temps dans le VB et le JAVA où ces problèmes d'inclusion n'existent pas.

Voila mon problème :

J'ai deux classes : UnPere et UnFils
la classe UnFils doit connaître son père
la classe UnPere instancie UnFils en lui passant dans le constructeur un
petit this,
pour lui indiquer qu'il est le père

On a donc deux constructeur : dans
UnFils.h on a doncle constructeur UnFils(UnPere *telPere)
et dans
UnPere.h on a UnPere(UnFils *telPere)

Où placer correctement mes #include "UnFils.h" et "UnPere.h" pour éviter
toute inclusion infinie/Dead Lock lors de la compilation ? Pouvez vous
m'envoyer un petit exemple ?

Merci,

Cédric Vasseur.

2 réponses

jcecchi Messages postés 117 Date d'inscription samedi 12 janvier 2002 Statut Membre Dernière intervention 14 janvier 2003 3
19 mai 2002 à 17:04
salut,

tente comme ca

UnFils.h

#ifndef UNFILS_H
#define UNFILS_H

#include "UnPere.h"

class UnFils{...
};

#endif

UnPere.h

#ifndef UNPERE_H
#define UNPERE_H

#include "UnFils.h"

class UnPere{...
};

#endif
0
beepmaster Messages postés 12 Date d'inscription lundi 30 juillet 2001 Statut Membre Dernière intervention 20 novembre 2008
19 mai 2002 à 20:10
Merci du coup de main, c'est ce que j'avais essayé mais ça ne passera pas comme ça.

Il suffit simplement d'ajouter class UnFils; pour le .h du père et réciproquement.

//-----UnPere.h----

class UnFils;

class UnPere
{
UnFils *sonFils;

//etc...

dans les .cpp on fait des #include là ou il faut et ça passe tout seul.
0
Rejoignez-nous