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

  FORUM HardWare.fr
  Programmation
  C++

  (visual c++) pbl avec les includes et le link...

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

(visual c++) pbl avec les includes et le link...

n°246619
Manro
Posté le 16-11-2002 à 17:57:26  profilanswer
 

Je fait un modeleur 3D en C++ sous Visual. Voici mon problème :
 
j'ai une classe "dialog" qui va instantier :
- 4 objets affichant chacun une fenetre opengl (haut/profil/...)
- un objet "scene" qui va gérer le nombre d'éléments de la scene et leurs positions, etc...
 
Le truc, c'est que la définition de la classe "scene" doit être évidemment connu par la classe "dialog" (pour que celle-ci la crée, mais aussi par la classe "fenetre opengl" (pour que celle-ci intéragisse avec elle).
 
Tout marche à la compilation. C'est lors du link qu'il y a 4 erreurs du type : "class scene... ... already defined".
 
Je crois savoir que c'est parce que plusieurs fichiers .ccp et/ou .h font référence au fichier où est défini la classe "scene".
J'ai essayé avec les #ifndef... mais ça n'a pas l'air de marcher
 
Aidez-moi please, ça fait 3 jours...

mood
Publicité
Posté le 16-11-2002 à 17:57:26  profilanswer
 

n°246681
chrisbk
-
Posté le 16-11-2002 à 18:57:01  profilanswer
 

humpf je vois pas trop ou ca peut bricoler.
 
basiquement tu as :
 
 
dialog.h :
#include "scene.h"
 
fenetreOGL.h:
#include "scene.h"
 
 
c bien ca ?
tu n'as pas des blagues genre A qui inclue B et B qui inclue A ?
 
tu peux poster les erreurs de link in extenso ?

n°246702
Manro
Posté le 16-11-2002 à 19:57:25  profilanswer
 

voici les erreurs de link :
 
Linking...
moc_modeleurdialog.obj : error LNK2005: "class Scene *  newScene" (?newScene@@3PAVScene@@A) already defined in main.obj
modeleurdialog.obj : error LNK2005: "class Scene *  newScene" (?newScene@@3PAVScene@@A) already defined in main.obj
oglviewer.obj : error LNK2005: "class Scene *  newScene" (?newScene@@3PAVScene@@A) already defined in main.obj
Debug/Modeleur.exe : fatal error LNK1169: one or more multiply defined symbols found
Error executing link.exe.
 
Modeleur.exe - 4 error(s), 0 warning(s)

n°246827
chrisbk
-
Posté le 16-11-2002 à 21:44:42  profilanswer
 

t'aurais pas une var globale nommé "newScene", toi, des fois, par hasard  :D
var déclarée dans un .h ? :D
 
dans le .h tu rajoute extern devant. Genre
 
extern Scene *newScene;
 
et dans UN cpp (un seul), tu fais :
Scene *newScene


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

  (visual c++) pbl avec les includes et le link...

 

Sujets relatifs
Transformer un code visual C++ pour que ca marche avec un autre compilProbleme lorsque je maximise une fentre sous Visual C++
de dev.c++ a visual c++[ Prog C ] Probleme avec les includes multiples...
comment on ecrit (different) en visual basic[VISUAL C++]Difference entre Release/Debug
[Visual C++] TabControl dans la vue graphique =>en dessous, plus rien![VISUAL] mise en page pour imprimer un document
Visual C++6 de wrox il est bien ce bouquin ?visual c++ : comment faire appel à un fichier .h ?
Plus de sujets relatifs à : (visual c++) pbl avec les includes et le link...


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