cs_guillaumeM
Messages postés4Date d'inscriptionmardi 30 juillet 2002StatutMembreDernière intervention 9 juin 2004
-
30 juil. 2002 à 16:54
cs_ProGamer
Messages postés44Date d'inscriptionjeudi 11 juillet 2002StatutMembreDernière intervention 1 février 2022
-
2 août 2002 à 15:38
j'ai un probleme en incluant les fichiers .h dans plusieur fichiers .cpp en effet j'ai des erreur de type
float PlayerMass" (?PlayerMass@@3MA) already defined in physics.obj
alors j'essaye ceci par exemple
#ifndef _GLVARS_H_
#define _GLVARS_H_
#pragma once
.
.
.
#endif
est ce que le nom de la variable (ici _GLVARS_H_) est important est il deja definit ou peut on prendre celui que l'on veut
qt au pragma once l fait le meme effet que ifndef CA MARCHE PAS :-(
alors qqun pourrai il me dire comment on ecri ca pour que ca inclu qu'une seule fois et que ca definnsse donc 1 seule fois les variables
dans tt les fichiers .h c'est ainsi et ca amrche et qd j'essaye ca marche pas
cs_guillaumeM
Messages postés4Date d'inscriptionmardi 30 juillet 2002StatutMembreDernière intervention 9 juin 2004 1 août 2002 à 08:04
ouai mais ca ca marche pas
en fait je voudrai inclure un fichier header contenant des variables dans plusieurs fichier source mais a ce moment la les variables sont définies plusieurs fois (d'ou des erreurs de link)
alors j'essaye
#ifndef NOM_QUELCONQUE
#define NOM_QUELCONQUE
.
.
.
#endif
ceci est censé regler le probleme et n'inclure les fichier header qu'une seule fois
d'apres les bouquins que j'ai on peut aussi utiliser
#pragma once
ca a le meme effet
mais chez moi ca ne marche pas du tt
alors je voudrai savoir comment on fait pour
eviter les inclusions multiples
cmarsc
Messages postés455Date d'inscriptionmercredi 6 mars 2002StatutMembreDernière intervention18 décembre 2003 1 août 2002 à 09:13
salut,
pour inclure des fichiers qui contiennent des variables ou des fonctions dans d'autres fichiers il faut faire include "mon_fichier.h" les informations dans ce fichier devraient être exploitables dans le fichier appelant, si différents fichiers ont des variables globales dans plusieurs fichiers il y aura des messages d'erreurs et pour les fonctions il faut taper
extern avant le nom de la fonction.
cs_ProGamer
Messages postés44Date d'inscriptionjeudi 11 juillet 2002StatutMembreDernière intervention 1 février 2022 2 août 2002 à 15:38
On m'a donné une méthode pour ce genre de chose.
Dans le header (supposons HEADER.H):
-------------------------------------------
#ifndef VARIABLES
#define EXTERN extern
#else
#define EXTERN
#endif
EXTERN int Variable1;
EXTERN int Variable2;
-------------------------------------------
Dans un fichier CPP:
-------------------------------------------
#define VARIABLES
#include "HEADER.H"
-------------------------------------------
Dans tous les autres fichier CPP utilsant ce header:
-------------------------------------------
#include "HEADER.H"
Quand la variable VARIABLES n'est pas définie, lors de la compilation, les variables seront déclarées extern. Il ne faut donc déclarer VARIABLES que dans un seul fichier CPP.