[debutant] probleme avec le linker
bonjour, je debute en C++, et je suis deja bloqué par un probleme : pour l'instant j'ai juste créé une classe avec une methode, et un main qui créé une instance de cette classe et lance la methode. ça compile sans erreur, mais le programme ne se lance pas et le linker me sort un probleme.
mes classe :
Main.cpp
Code:
1 2 3 4 5 6 7 8 9 10
| #include "Jeu.cpp"
#include "Jeu.h"
#include <iostream>
int main()
{
Jeu jeu;
jeu.Lancer();
return 0;
} |
Jeu.cpp
Code:
1 2 3 4 5 6 7
| #include <iostream>
#include "Jeu.h"
void Jeu::Lancer()
{
cout<<"ok";
} |
Jeu.h
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| #include <vector>
#ifndef JEU_H
#define JEU_H
class Jeu{
private:
vector<int> joueurs;
public:
Jeu();
~Jeu();
void Lancer();
};
#endif |
j'ai pourtant suivi ce qui est donné dans la FAQ (http://c.developpez.com/faq/cpp/?pag...SS_header_cpp)
le linker me dit :
Citation:
e:\...\jeu.o(.text+0x10):jeu.cpp: multiple definition of `Jeu::Lancer(void)'
e:\...\main.o(.text+0x10):main.cpp: first defined here
mais si je supprime Lancer() dans un des fichiers ca ne compile plus.
comment faire ?
:cry: [/quote]