bonjour tous le monde
j'obtient le message d'eereur
avec la commande suivante/usr/bin/ld: warning: libstdc++.so.5, needed by /usr/X11R6/lib//libGLU.so, may conflict with libstdc++.so.6
/tmp/cc6qZpRX.o(.text+0x1d): dans la fonction « Arme::Arme() »:
: undefined reference to `vtable for Arme'
/tmp/cc6qZpRX.o(.text+0x41): dans la fonction « Arme::Arme() »:
: undefined reference to `vtable for Arme'
/tmp/cc3ex1cu.o(.text+0x6dd): dans la fonction « Joueur::tirer() »:
: undefined reference to `Arme::tirer()'
/tmp/ccUgnGtK.o(.gnu.linkonce.r._ZTI8M1Garand+0x8): undefined reference to `typeinfo for Arme'
collect2: ld a retourné 1 code d'état d'exécution
j'ai 3 classes (résumé ci-dessous)g++-3.4 *.cpp *.o -L/usr/X11R6/lib/ -lGLU -lSDL -lSDL_image -l SDL_mixer -lGL -lm -o main
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 class Joueur { Arme arme_courante; .... Joueur(); void tirer(); }; Joueur::Joueur() { arme_courante = M1Garand(); } void Joueur::tirer() { arme_courante.tirer(); }
et la troisième
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 class Arme :public Objet { Arme(); virtual void tirer(); };
voici mes question :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 class M1Garand :public Arme { ... void tirer(); }; void M1Garand::tirer() { //code }
1 - comment éviter le problème de conflit ?
2 - quel est mon erreur dans mon programme ?[/code]
Partager