[Résolu] Méthode/classe amie possible??

Hello,

Mon ptit dev s'articule autours de 4 objets. J'utilise Eclipse à l'aide du plugin de Jan (http://www.baeyens.it) avec les librairies Arduino 1.0 et WinAVR 20081205 (gcc 4.3.2) livré avec l'EDI Arduino.

Lorsque je définis une "friend" classe ou méthode (le .h donc), pas de soucis, la compilation passe. Par contre, lorsque j'implémente et essais de faire appel à cette fameuse méthode amie, le compilateur me répond qu'elle n'est pas définit.

D’où ma question: est-il possible d'utiliser des fonctions ou classes amies dans le cadre d'un dev Arduino?

Merci

Ce code ci marche dans l'IDE 1.0

class A { protected: int a;

public: A() { a = 1; }

void set( int val ) { a = val; }; int get( void ) { return a; }

friend class B; };

class B { protected: int b;

public: B() { b = 1; }

void set( int val ) { b = val; }; int get( void ) { return b; }

void copy( A &_a ) { b = _a.a; } };

void setup( void ) { A my_a; B my_b;

my_b.copy( my_a ); Serial.print( "my_b.b ="); Serial.println( my_b.get() ); }

void loop( void ) { }

Ok, je vais regarder ça. Merci beaucoup

Bonjour,

moribond: Mon ptit dev s'articule autours de 4 objets. J'utilise Eclipse à l'aide du plugin de Jan (http://www.baeyens.it) avec les librairies Arduino 1.0 et WinAVR 20081205 (gcc 4.3.2) livré avec l'EDI Arduino.

Lorsque je définis une "friend" classe ou méthode (le .h donc), pas de soucis, la compilation passe. Par contre, lorsque j'implémente et essais de faire appel à cette fameuse méthode amie, le compilateur me répond qu'elle n'est pas définit.

D’où ma question: est-il possible d'utiliser des fonctions ou classes amies dans le cadre d'un dev Arduino?

Oui c'est tout à fait possible, c'est même couramment utilisait dans la classe HardwareSerial d'arduino 1.0. Tente de remplacer la toolchain winAVR par la version plus récente datant de 2010 ça devrait aider. Sinon il ce peut que ce soit un bug dans le plugin eclipse.