Buona sera, forse è un argomento più da forum di programmazione c++ che di progetti arduino, ma ci provo comunque, sono diversi giorni che cerco e faccio prove ma non riesco a uscirne e le librerie c++ per quanto abbia letto qua e la non riesco a comprenderle del tutto, capisco cosa fanno i vari pezzi isolati, ma nell'insieme di salti e dichiarazioni mi perdo. Spero qualcuno riesca a illuminarmi, mi piacerebbe imparare qualcosa di più sulle librerie.
All'interno di una libreria viene fatto un parse di un header http, viene smembrata per rcavare valori che servono alla libreria stessa, mi sono fatto una variabile a parte e ho riunito tutti i char per ottenere un unica una striga (parliamo del file cpp)
headerString.concat(ch1);
Quindi facendo un serial print dentro la libreria vedo il blocco che mi serve sul serial monitor mentre è in esecuzione, ora questa stringa lo voglio esportare sul serial non mi serve a nulla
ho dichiarato nella Lib.h nelle sezione pubbica
public:
String getStr() ;
nella lib.cpp ho messo le dichiarazioni all'inizio
char ch1;
String headerString="";
....
....
String Lib::getStr()
{
return headerString;
} ;
tutto viene compilato senza errori, ma non so come prendere questa stringa dallo scketch
se metto nello sketch:
void header_get()
{
String prova = Lib.getStr();
}
ottengo questo errore ...> error: expected primary-expression before '.' token
se metto nello sketch:
void header_get()
{
String prova = Lib::getStr();
}
ottengo questo errore ...> error: cannot call member function 'Lib::getStr()' without object
cosa sbaglio? come faccio a prelevare questo valore dallo sketch?
grazie