C++ probleme accès méthode
cppman
Messages postés
2
Date d'inscription
Statut
Membre
Dernière intervention
-
Char Snipeur Messages postés 9813 Date d'inscription Statut Contributeur Dernière intervention -
Char Snipeur Messages postés 9813 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
j'ecrit un programme c++ sous window et j'ai un petit probleme qui est le suivant:
j'ai 2 classes: Case et CaseImmo qui hérite de Case lorsque j'instancie de la maniere suivante:
Case * c1 = new CaseImo(X,Y,Z);
à partir de c1 de type static case je n'arrive pas a acceder au methodes du type dynamic CaseImmo, ex:
dans la classe CaseImmo jai une methode getId() qui n'est pas dans la classe case et lorsue je fait : c1->getId() le compilateur me retourne l'erreur: class Case has no member getId()... MErci de m'aider
j'ecrit un programme c++ sous window et j'ai un petit probleme qui est le suivant:
j'ai 2 classes: Case et CaseImmo qui hérite de Case lorsque j'instancie de la maniere suivante:
Case * c1 = new CaseImo(X,Y,Z);
à partir de c1 de type static case je n'arrive pas a acceder au methodes du type dynamic CaseImmo, ex:
dans la classe CaseImmo jai une methode getId() qui n'est pas dans la classe case et lorsue je fait : c1->getId() le compilateur me retourne l'erreur: class Case has no member getId()... MErci de m'aider
A voir également:
- C++ probleme accès méthode
- Acces rapide - Guide
- Accès refusé - Guide
- Trousseau d'accès iphone - Guide
- Accès presse papier - Guide
- Je n'ai plus acces a ma boite mail gmail - Guide
2 réponses
Salut.
D'après certaine personne, c'est pas très propre de faire comme ça.
Pour accéder à ton membre, il faut faire :
((CaseImmo*)c1)->getId();
et là ça devrais fonctionner.
Une autre solution serait de déclarer une méthode getId() dans Case de manière virtuelle (à tester, je ne suis pas sur que ça fonctionne)
D'après certaine personne, c'est pas très propre de faire comme ça.
Pour accéder à ton membre, il faut faire :
((CaseImmo*)c1)->getId();
et là ça devrais fonctionner.
Une autre solution serait de déclarer une méthode getId() dans Case de manière virtuelle (à tester, je ne suis pas sur que ça fonctionne)
cppman
Messages postés
2
Date d'inscription
Statut
Membre
Dernière intervention
Merci de m'avoir répondu ta méthode en castant fonctionne juste je trouve pas ca super propre , enfin ca marche merci si d'autre personne pouvait me donner leur avis ca serais sympa.