ymca2003
Messages postés2070Date d'inscriptionmardi 22 avril 2003StatutMembreDernière intervention 3 juillet 20067 6 janv. 2005 à 17:23
D'après MSDN, il doit s'agir d'une variable globale définie dans un .h qui est inclu dans plusieurs fichier sources.
=> mettre la déclaration du .h avec extern et dans UN des sources la redéclarer sans le mot clé extern.
Si c'est pas ça, met l'erreur en entier (et pas seulement le numéro)
vdust
Messages postés43Date d'inscriptionjeudi 16 décembre 2004StatutMembreDernière intervention14 mars 2007 6 janv. 2005 à 20:20
Comment fais tu pour utiliser lib.cpp ?
Si tu fais
#include "lib.cpp"
c'est normal que tu aies une erreur : c'est comme si tu déclarais deux
fois ta fonction. Dans ton module main.cpp, tu ne dois juste déclarer
la fonction et non la redéfinir en écrivant juste
char* format_error_message(int);
et en supprimant la ligne du #include
Si lib.cpp doit servir dans plusieurs modules, il est pratique de créer
un fichier header (par exemple lib.h) dans lequel tu mets toutes les
déclarations des fonctions, leur définition (le corps de la fonction)
se trouvant dans lib.cpp. Ensuite, tu n'as plus qu'à placer la ligne
suivante au début de chaque module qui utilise des fonctions de lib.cpp
#include "lib.h"
le plus 'safe' étant d'inclure cette ligne également au début de lib.cpp
Autre méthode (qui ne marche que si le module lib.cpp est inclus dans
un seul module [sinon, utiliser un header]) : tu indiques à VC++ de ne
pas compiler lib.cpp (toujours dans le cas ou il y a le #include
"lib.cpp").
ciao...
-- Virtual Dust --
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_LordBob
Messages postés2865Date d'inscriptionsamedi 2 novembre 2002StatutMembreDernière intervention11 mai 20099 6 janv. 2005 à 20:51
petite precision, si tu utilises une meme variable dans plusieurs fichiers source différent... tu la declare normalement dans ton fichier princpale ou elle est utilisé, et pour les autres tu la declare de la facon suivante:
extern type varible
Bob...
"La chance accorde ses faveur aux esprits avertis..."