Problème C++
Fermé
ITACHI971
Messages postés
760
Date d'inscription
mardi 2 septembre 2008
Statut
Membre
Dernière intervention
24 décembre 2010
-
21 févr. 2010 à 19:18
mamiemando Messages postés 32283 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 17 mars 2023 - 22 févr. 2010 à 00:44
mamiemando Messages postés 32283 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 17 mars 2023 - 22 févr. 2010 à 00:44
3 réponses
loupius
Messages postés
697
Date d'inscription
dimanche 1 novembre 2009
Statut
Membre
Dernière intervention
31 décembre 2017
148
21 févr. 2010 à 22:32
21 févr. 2010 à 22:32
Heu, il y a beaucoup de raisons pour lesquelles la compilation ne peut pas bien se passer:
- problème de parenthèses dans 'Personage::Personage()' et 'void Personage::recevoirDegats(int nbDegats)',
- tantôt 'm_mana' et tantôt 'm_nana',
- 'int m_nomArme' et 'm_nomArme = "Epée rouillée"',
- tantôt 'm_degatsArme' et tantôt 'm_degatArme',
- tantôt 'recevoirDegats' et tantôt 'recevoirDegat',
- 'bool Personage::estVivant()' non déclaré dans la classe,
- et sans doute bien d'autres !
De la rigueur, de la rigueur que diable!
Bonne continuation.
- problème de parenthèses dans 'Personage::Personage()' et 'void Personage::recevoirDegats(int nbDegats)',
- tantôt 'm_mana' et tantôt 'm_nana',
- 'int m_nomArme' et 'm_nomArme = "Epée rouillée"',
- tantôt 'm_degatsArme' et tantôt 'm_degatArme',
- tantôt 'recevoirDegats' et tantôt 'recevoirDegat',
- 'bool Personage::estVivant()' non déclaré dans la classe,
- et sans doute bien d'autres !
De la rigueur, de la rigueur que diable!
Bonne continuation.
ITACHI971
Messages postés
760
Date d'inscription
mardi 2 septembre 2008
Statut
Membre
Dernière intervention
24 décembre 2010
229
21 févr. 2010 à 22:37
21 févr. 2010 à 22:37
C'est bon le gros problème est que j'avais pas dit que personage.cpp fait parti du projet (dans codeblocks) ^^
mamiemando
Messages postés
32283
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
17 mars 2023
7 572
22 févr. 2010 à 00:44
22 févr. 2010 à 00:44
Si je peux me permettre "personnage" prend deux "n".
Il serait plus judicieux de noter tes headers c++ "hpp" afin de les distinguer des headers C.
Mêmes remarques que loupious pour le code (bon si tu as mal configuré ton projet, normal que tu ne les ai pas vu à la compilation).
Je te conseille également d'indenter ton code, ça t'évitera pas mal de problèmes d'accolades comme dans ton constructeur Personnage par exemple.
Par ailleurs le code est améliorable. Par exemple :
... ou pour le constructeur :
Enfin pour avoir un code C++ propre, il serait souhaitable de définir le constructeur de copie et l'opérateur =.
Bon courage ;-)
Il serait plus judicieux de noter tes headers c++ "hpp" afin de les distinguer des headers C.
Mêmes remarques que loupious pour le code (bon si tu as mal configuré ton projet, normal que tu ne les ai pas vu à la compilation).
Je te conseille également d'indenter ton code, ça t'évitera pas mal de problèmes d'accolades comme dans ton constructeur Personnage par exemple.
Par ailleurs le code est améliorable. Par exemple :
bool Personage::estVivant(){
return m_vie > 0;
}
... ou pour le constructeur :
Personage::Personage():
m_vie(100),
m_mana(100),
m_nomArme("Epée rouillée"),
m_degatArme(0)
{}
Enfin pour avoir un code C++ propre, il serait souhaitable de définir le constructeur de copie et l'opérateur =.
Bon courage ;-)