Problème d'héritage, constructeur par defaut
Creuilcreuil
Messages postés
44
Date d'inscription
Statut
Membre
Dernière intervention
-
Creuilcreuil Messages postés 44 Date d'inscription Statut Membre Dernière intervention -
Creuilcreuil Messages postés 44 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je suis suis en train de cree des class de base , et j'ai un problem d'heritage
avec le constructeur par defaut.
j'ai 3 class Entite, Perso, Monstre.
je peux acceder a un attribue de 'Entie' depuis Perso et le modifiée
mais depuis 'Monstre' je peux pas accéder a un attribue de 'Perso' ni de 'Entite'
Merci de m'avoir lue.
Je suis suis en train de cree des class de base , et j'ai un problem d'heritage
avec le constructeur par defaut.
j'ai 3 class Entite, Perso, Monstre.
je peux acceder a un attribue de 'Entie' depuis Perso et le modifiée
mais depuis 'Monstre' je peux pas accéder a un attribue de 'Perso' ni de 'Entite'
Merci de m'avoir lue.
In constuctor Monstre::Monstre()': errore: class 'Monstre' does no have any fileds named 'm_equipe' errore: class 'Monstre' does no have any fileds named 'm_nom' //'.H'------------------------- class Entite { public: Entite(); ~Entite(); std::string definirNom(std::string c_nom); protected: m_nom; } //'.CPP'--------------------------- Entite::Entite() : m_name("MISSINGNO") Entite::definirNom(std::string c_nom) { m_nom=c_nom } //'.H'------------------------------ class Perso : public Entite { public: Perso(); ~Perso(); std::string definirEquipe(std::string c_equipe) protected: std::string m_equipe; } //'.CPP'---------------------------- Perso::Perso : m_team("Joueur") Entite::definirEquipe(std::string c_equipe) { m_equipe=c_equipe } //'.H'------------------------------- class Monstre : public Perso { public: Monstre() ~Monstre() } //'.CPP'------------------------ Monstre::Monstre : m_equipe("Monstre"), m_nom("Garou")
A voir également:
- Cheick yvan formate héritage
- Formate pour taxer client frigo vide ✓ - Forum Vos droits sur internet
- Que du fake formate heritage ✓ - Forum Vos droits sur internet
- Héritage - Forum Vos droits sur internet
- Cheick yvan format - Forum PDF
- Formate pour taxer client sur nourriture - Forum Loisirs / Divertissements
1 réponse
Salut, tu veux dire que avec une fonction de Monstre tu ne peux pas récupérer les valeurs des variables membres d'autres fonctions ? c'est bien ca ?
Si c'est ça, c'est totalement normal, tes variables membres sont déclarées en protected, donc elles ne sont pas modifiables par une autre classe. a moins de créer une fonction dans la classe que tu veux qui va récupérer la valeur et une qui va la modifier. c'est un principe de la POO.
Si jamais ce n'était pas ta question, précises un peu ton problème
Si c'est ça, c'est totalement normal, tes variables membres sont déclarées en protected, donc elles ne sont pas modifiables par une autre classe. a moins de créer une fonction dans la classe que tu veux qui va récupérer la valeur et une qui va la modifier. c'est un principe de la POO.
Si jamais ce n'était pas ta question, précises un peu ton problème
Pour pouvoir modifier l'équipe et qu'elle ne soit pas la même que pour les objet 'Perso'
modifier 'm_nom' de 'Entite' depuis le constructeur de 'Perso' fonctionne.
mais modifier 'm_equipe' de Perso ou 'm_nom' de 'Entie' depuis le constructeur de 'Monstre' ne fonctionne pas.
class Mère> Entite::Entie() : m_nom("missing")
class fille de 'Entite'/class Mère de 'Monstre'> Perso::Perso (): m_nom("Joe"),m_equipe("Joueur")
class fille de 'Perso'> Monstre::Monstre : m_equipe("Monstre").
Merci quand même.