[Résolu] Librairie maison

numero_744:
Cela ne compile pas mais dois-je changer

class numLED : public Pruint8_t {

en

class numLED : public Print8_t {

?

Oups ! Petite boulette dans mon CTRL+F remplacer "int" -> "uint8_t".

Le bon code est :

class numLED : public Print {

numero_744:
(As-tu compilé avec un exemple comme :
(...)

Non, habituellement je le fait, sauf cette fois ci par manque de temps.

numero_744:
Peut-on mettre la définition dans le *.h ?

Qu'entends tu par "définition" (qu'on parle bien de la même chose) ?

numero_744:
Il me dit que void numLED::Write(int) est protegé.

Si tu veut que ta classe hérite de la classe Print il faut que write soit "virtual" et respecte le prototype suivant :

virtual size_t write(uint8_t);

(En entrée un uint8_t qui est un caractére ou une valeur binaire et en sortie le nombre de caractére écrit soit 1)

Avant de partir dans des héritages de classe virtuelle tu devrais approfondir tes bases en C :wink:

Ps Blizzard27: quitte à inclure <stdint.h> autant utiliser des uint8_t et non des int.
PPs Blizzard27: par convention en C++ les membres d'une classe sont private ou protected -> principe d'encapsulation.