C++, probleme avec un attribut protected

Fermé
lyes312 Messages postés 10 Date d'inscription samedi 2 février 2008 Statut Membre Dernière intervention 18 février 2009 - 18 févr. 2009 à 23:32
 loupius - 19 févr. 2009 à 00:43
Bonjour,
j'ai un petit souci :

j'ai un attribut "at" protected dans une classe A
une classe B a un attibut qui est un vector de la classe A.

Lorsque j'essaie d'accéder a "at" dans une méthode de la classe B, il m'indique deux erreurs:

- within this context , là où je veux y accéder et
- attribut proteted, là où j'ai déclaré mon attribut.

je comprend pas pourquoi, pourtant je ne vois pas d'anomalie !

vous avez une idée d'où ça peut provenir ??


merci d'avance
A voir également:

4 réponses

HamzuS_The_Great Messages postés 24 Date d'inscription mercredi 18 février 2009 Statut Membre Dernière intervention 20 novembre 2009 2
18 févr. 2009 à 23:36
salut lyes
tout simplement parceque ta variable est protected "protégée" !
donc tu dois la declarer public pour que les autres classes puisse y acceder
0
lyes312 Messages postés 10 Date d'inscription samedi 2 février 2008 Statut Membre Dernière intervention 18 février 2009
18 févr. 2009 à 23:38
mais dans ma classe B, j'ai un attribut qui est une collection de la classe A, donc normalement je peux y accéder sans soucis.
0
HamzuS_The_Great Messages postés 24 Date d'inscription mercredi 18 février 2009 Statut Membre Dernière intervention 20 novembre 2009 2
19 févr. 2009 à 00:06
j'en suis pas sur !
je crois que si la classe B herite de la classe A alors elle peut acceder au ses attributs privées
0
La réponse n° 3 est correcte.
Tu ne peux accéder à une variable 'protected' que sous les conditions suivantes:
- comme pour une 'private', ne peut être utilisée que dans une fonction membre de la classe
- et, en extension, le statut de 'protected' donne aussi ce privilège aux fonctions d'une classe héritée de cette classe à condition que la dérivation soit de type 'protected' ou 'public'.
0