#ifndef Morse_h
#define Morse_h
// the #include statment and code go here...
#endif
che significa questo, in particolare cosa è questo : "#ifndef Morse_h" .. ho pensato che fosse una verifica per vedere se esiste morse_h .. allora carica morse_h... quindi questo: "#define Morse_h" determina il caricamento nllo schech della libreria morse_h...... è cos'?
E' una tecnica molto usata per evitare di far includere 2 volte la stessa porzione di codice, magari perché richiamata da 2 file differenti. Quindi si fa così: si controlla se una costante che abbia un certo nome è già stata definita oppure no. Se non è stata definita, la si definisce e si include il codice. Se è già stata definita, vuol dire che questo file è già stato incluso da qualche altra parte e quindi non si fa nulla.
.. invece se non voglio caricare tutta la libreria posso fare così:
#include "Morse.h"
e quando voglio richiamare una funzione di quella libreria faccio così:
Morse::Morse(int pin)
{
pinMode(pin, OUTPUT);
_pin = pin;
}
... ma ho capito bene? mha... non mi convince.. perchè da una parte parla di morse.h e dall'altra parte di morse_h
.. bho!!!!
Tu devi includere il file .h, lascia perdere quel "Morse_h", serve per altro, come ti ho spiegato.
Poi una volta inclusa la lib, procedi in base a come hai strutturato la lib. Se hai creato delle funzioni includendole in una classe, devi istanziare una copia della classe e poi chiamare le nuove funzioni usando l'operatore ".".
#include "Morse.h"
Morse myMorse; //esempio
....
myMorse.sendMessage(....); //esempio