RESOLU: Accès à la classe mère de propriétés et des méthodes protected

Bonjour,

J'ai vu que si des propriétés et des méthodes étaient protected, on pouvait les utiliser dans les classes de filles.

Voici un code dans lequel j'ai enlevé les 1000 lignes qui fonctionnent pour ne laisser que celles qui me posent problème. J'accède sans problème à une propriété protected, à une méthode protected de la classe mère, mais je ne comprends pas pourquoi le mélange des deux est refusé.

//----- Zone -------
class Zone
{
 protected:
  char valeur;
  Zone *objetSuivant;
  void onClic(void){}
};

// ----- Radio -----
class Radio: public Zone
{
 protected:
  void test(void);
};

void Radio::test(void)
{
  objetSuivant=this;
  valeur=3; // OK
  onClic(); // OK
  objetSuivant->onClic(); // Erreur!
  objetSuivant->valeur=2; // Erreur!
}

//------ Programme ----------
void setup(){}

void loop(){}

Et les messages d'erreur qui vont bien (passé en code pour respecter les alignements des ^~~~~~~~):

I:\Pecheux_Graph\Pecheux_Graph_VMA412_ST7781\erreur\erreur.ino: In member function 'void Radio::test()':

erreur:22:24: error: 'void Zone::onClic()' is protected within this context

   objetSuivant->onClic(); // Erreur!

                        ^

I:\Pecheux_Graph\Pecheux_Graph_VMA412_ST7781\erreur\erreur.ino:7:8: note: declared protected here

   void onClic(void){}

        ^~~~~~

erreur:23:17: error: 'char Zone::valeur' is protected within this context

   objetSuivant->valeur=2; // Erreur!

                 ^~~~~~

I:\Pecheux_Graph\Pecheux_Graph_VMA412_ST7781\erreur\erreur.ino:5:8: note: declared protected here

   char valeur;

        ^~~~~~

exit status 1
'void Zone::onClic()' is protected within this context

Je sais bien que tout est protected, mais Je suis sa fille!

Note en déclarant tout public, il n'y a pas d'erreur.

Merci

Le problème est que les membres protected utilisés sont ceux d'une autre instance.
Si tu utilises directement onClick() et valeur depuis une méthode, cela ne pose pas de problème.
En bref il n'y a pas relation d'héritage.

Merci, effectivement, c'est rare de passer par un pointeur, du coup sans les pointeurs ce cas ne s'est pas présenté.