Heritage, classe abstraite et acces aux données????

Résolu
eupeup Messages postés 57 Date d'inscription mardi 11 mars 2003 Statut Membre Dernière intervention 24 avril 2013 - 8 juin 2010 à 17:56
eupeup Messages postés 57 Date d'inscription mardi 11 mars 2003 Statut Membre Dernière intervention 24 avril 2013 - 8 juin 2010 à 18:22
Bonjour à tous,

j'ai une petite question... j'ai cherché, mais j'ai pas exactement trouvé la réponse...
J'ai une classe abstraite qui contient deux fonctions virtuellles pures ainsi que des arguments déclarés privés. De plus j'ai deux classes qui heritent de cette classe...

Ma question est toute simple, j'ai fait hérité ma classe abstraite de manière publique, mais dans les classes filles, est il normal d'avoir une erreur à la compilation lorsque, dans le corps d'une méthode d'une des classes filles, je veux accéder à un des arguments privés définis dans la classe mere??

Un héritage publique ne permet pas l'accès aux arguments privés, même dans le corps d'une fonction de la classe fille?
Suis-je obligé de faire des méthodes d'accès type get() et set()?
Ou alors de les déclarer publiques? (mais c'est contre l'encapsulation..., mais bon comme c'est une classe abstraite, pt etre que...)


Merci d'avance,

Peupeu

2 réponses

cptpingu Messages postés 3839 Date d'inscription dimanche 12 décembre 2004 Statut Modérateur Dernière intervention 29 juin 2024 124
8 juin 2010 à 18:11
La solution est très simple: passe les en "protected".

public: accessible pour tous
protected: accessible à la classe et à ses filles (en héritage public).
private: accessible uniquement à la classe, et à personne d'autre.


_____________________________________________
Historique de mes créations, et quelques articles:[ http://0217021.free.fr/portfolio
http://0217021.free.fr/portfolio]
eupeup Messages postés 57 Date d'inscription mardi 11 mars 2003 Statut Membre Dernière intervention 24 avril 2013
8 juin 2010 à 18:22
Ca marche, hehe!!!

Merci
Rejoignez-nous