Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
902 connectés 

  FORUM HardWare.fr
  Programmation

  [C/C++] Inclusions de fichiers

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[C/C++] Inclusions de fichiers

n°21390
oliv5
Pourquoi ? Parce que !
Posté le 29-03-2001 à 18:57:37  profilanswer
 

Rigolez pas. J'arrive pas me demerder avec les inclusions de fichiers sources et en-tete en c++.
Je m'explique : j'aimerais qu'un fichier source A connaisse les declaration d'un fichier source B (#include "fichierb.cpp" ) et que ce dernier connaisse les declarations du fichier A. Bref, il faut qu'ils se connaissent.  
Je pourrais les mettre dans le même fichier, mais ce serait bordélique, car il y a deja pas mal de ligne dans chacun.
Y a t il un moyen simple ?

mood
Publicité
Posté le 29-03-2001 à 18:57:37  profilanswer
 

n°21399
SoWhatIn22
Posté le 29-03-2001 à 19:30:39  profilanswer
 

Ben ca depend pas mal de ou exactement tu as besoin de tout ca.
 
Deja c'est rare que l'on fasse des #include "machin.cpp", a part pour les classes templates.
 
Sinon, si les fichiers n'ont besoin de se connaitre que dans les .cpp et pas dans les headers, et ben tu fais les inclusions dans les .cpp et pas dans le header, et reciproquement.
 
Et pis ben si même avec ca, ca ne fonctionne pas, alors faut rassembler dans un même fichier.

n°21428
BifaceMcLe​OD
The HighGlandeur
Posté le 30-03-2001 à 00:22:28  profilanswer
 

Sinon, tu peux utiliser des protections d'inclusions. D'ailleurs, c'est toujours conseillé en C/C++.
 
Au tout début de A.h, tu mets :
#ifndef _A_H_
#define _A_H_
 
// Le reste de A.h, y compris ceci:
#include "B.h"
 
...
 
Et tu le termines par :
#endif // _A_H_
 
Et dans B.h:
#ifndef _B_H_
#define _B_H_
 
// Le reste de B.h, y compris ceci:
#include "A.h"
 
...
 
#endif // _B_H_
 
Ca devrait faire ce que tu veux.

n°21438
oliv5
Pourquoi ? Parce que !
Posté le 30-03-2001 à 08:23:11  profilanswer
 

Haaaaaa, ok, tu fous le include dans ce bins conditionel. Et c'est censé passer, non ? Parce que je n'ai plus de pb de compilation, mais plein de pb de linkage (une trentaine pour erte exact, et je sais pas d'ou ca vient).

n°21442
BENB
100% Lux.
Posté le 30-03-2001 à 09:00:48  profilanswer
 

oliv5 a écrit a écrit :

Haaaaaa, ok, tu fous le include dans ce bins conditionel. Et c'est censé passer, non ? Parce que je n'ai plus de pb de compilation, mais plein de pb de linkage (une trentaine pour erte exact, et je sais pas d'ou ca vient).




 
Ton probleme montre une grave probleme de conception.
Il n'est pas normal que A ait besion de B et B de A...
Decoupes tes fichiers en trois .h pour les headers, .i pour les inlines et definitions templates et .c (ou cpp) pour les codes.
et normalement ton probleme devrai disparaitre a moins que tu ne tentes d'inclure une classe A dans une classe B qui inclue une classe A ce qui est impossible...

n°21528
frenchkiss
Posté le 30-03-2001 à 16:06:37  profilanswer
 

sinon si tu peux (a condition que a soit pas attibut de b ou inversement)
faire un  
class A;
dans B
 
et un class B; dans A
une forward reference only quoi , come il dir Rational rose.
le mieux c est d eviter au max les ncludes .
mais de toute facon c clair toujours proteger comme le disait biface
 
FK


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation

  [C/C++] Inclusions de fichiers

 

Sujets relatifs
fichiers .DBF c koi ce truc?????Fichiers MySQL Helpppp !!!
[JAVA] Deux questions sur les fichiers JARAppel à différent fichiers code
[C] Fichiers et EOFcomment utiliser les fichiers de 3D Studio avec Open GL ?
[php] un site qui charge des fichiers lui même sur d'autres sites?[ASP] Accès aux fichiers sur un PC distant
[C/UNIX] Lire des fichiers .mid ou .wav[Algo] lister les fichiers récursivement
Plus de sujets relatifs à : [C/C++] Inclusions de fichiers


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR