Lo modifico si chiama successivamente questa variabile trovo, il valore modificato questo perch la variabile, non viene creata in modo temporaneo Quando iniziamo ad eseguire, il codice della funzione non viene mantenuto in particolare aree di memoria e quindi viene mantenuta tra una chiamata e laltra come se non Buttarsi via tutto, ok, possiamo fare lo stesso nelle classi quindi in programmazione ad oggetti e vediamo come funziona E. Come fare, soprattutto per inizializzare, il dolore di queste, variabili sostanzialmente Noi abbiamo una scrittura, che la classe, la definizione della classe, questo qui, il progetto del mio; oggetto. Ok, Quando instanzio la classe, Quindi andr, a scrivere qualcosa del tipo test T punto e virgola questa T listanza della mia classe cio la realizzazione del diciamo del codice, allinterno della memoria di quello, che ho descritto definendo la classe, questa istanza ne posso avere pi di una Quindi posso creare per esempio il test T2 e cos via quando c una variabile di tipo, statico succede, che avr in memoria, la distanza T, dallaltra, parte avremo, listanza T2 ma se una delle variabili interne di tipo, statico questa variabile statica chiamiamola X, sar condivisa tra le Varie classi quindi avr una zona di memoria X, che pu essere utilizzata da tutte e, due queste classi ma in comune bisogna poi anche fare qualche, attenzione ma vediamo Intanto come fare, questa cosa scriviamo, il codice con lambiente di sviluppo, Arduino e lo compiliamo lo facciamo girare Su un qualsiasi hardware quindi su un arduino Nano Per esempio diciamo non fondamentale lhardware possiamo definire una classe come abbiamo, detto questa classe chiameremo, test posso mettere tutto in un file; unico per evitare complicazioni un semplice esercizio solitamente abbiamo visto che si pu dividere tutto per avere Una situazione pi ordinata quindi facciamo Class test mettiamo le graffe e qui dentro andremo, a scrivere il codice solitamente abbiamo una sezione, private e una Public dentro Public mettiamo per esempio, il costruttore quindi test per tutto chiuso importante sempre aggiungerlo in questo caso il nostro costruttore avr Una variabile, mettiamo n, OK, giusto per passargli, un parametro e lo mettiamo di default uguale, a zero in questo modo se io chiamo la classe, senza passare.

I parametri comunque viene assegnato, un valore n che poi andremo a dare alla variabile interna gli ho messo un parametro. Giusto per avere una classe che abbia come dire, qualche movimento allinterno che non sia semplicemente vuota poi creiamo, il distruttore che unaltra cosa importante soprattutto se andiamo ad allocare memoria dinamicamente qui non facciamo, nulla ma lo facciamo solo per esercizio per creare, il costruttore dobbiamo inserire, il Carattere Tilde queste specie di bisciolina, mettiamo test aperto e chiusa punto e virgola aggiungiamo una variabile pubblica, che posso accedere direttamente questo per vedere la differenza, con la variabile, statica nella, parte privata aggiungiamo la nostra variabile statica quindi Static Inter lo chiamo instances, che tiene, conto del Numero di classe, che abbiamo creato, Ok, quindi questo, qui la definizione, subito dopo, possiamo, mettere limplementazione, ho iniziato con il costruttore quindi il testo due punti due punti test aperta e chiusa avevamo un parametro quella n quindi riportiamo qui in n, 0, n 0 da come ho. Detto, prima il default in modo che se non passiamo, il parametro viene comunque associato, dove mettiamo questo, valore n Facciamolo da tempo Quindi facciamo, il tempo uguale n creiamo, il distruttore quindi copiamoci il tilde test; quella Biscione si chiama Tilde facciamo test due punti due punti incollo. Il distruttore siamo le graffe Per ora lasciamo il codice vuoto passiamo nel setup aggiungiamo, un serio punto begin per stampare qualcosa distanziamo le classi per test di uno; uguale qui chiamiamo il costruttore test li passo, un numero copia incollo per avere pi istanze e per vedere poi Leffetto della nostra variabile statica Quindi avremo T1 T2 T3 vediamo vari valori qui, giusto per avere una differenza e poi stampiamo.

I valori con delle serie se nel punto Print mettiamo T1, due punti e mettiamo, il valore di tempo e direttamente accessibile quindi possiamo fare t1.temp, faccio una copia dei Print dobbiamo anche, il valore della variabile in stanches quindi facciamo. I due punti qui per poterlo stampare faccio Print LN non posso, accedere direttamente Creiamo un metodo get I aperto chiuso che dovrebbe stamparmelo andiamo, a creare questo metodo get I ci mettete nella parte pubblica faccio int Get chiuso punto e virgola qui sotto lo implementiamo facciamo testo. Due punti due punti Get iaperta chiusa questo restituir il valore di instance, quindi facciamo Return instances instance non ha un valore, iniziale quando lavoriamo con le funzioni siamo abituati; a fare una cosa del genere instance, uguale 0 quindi lo vado, a valorizzare la prima volta poi in Teoria dovrebbe essere associato valorizzato per tutti prima di compilare mi sono accorto di un problema qua Ok niente, va prima compiliamo e proviamo, a eseguire il codice come vedete abbiamo un errore perch purtroppo istanze Non pu, essere inizializzata in questo modo quando si lavora con gli oggetti Per dare assegnare un valore alla nostra variabile dobbiamo scrivere una istruzione particolare ve la metto, qui e, come se fosse una funzione non faccio Int test e faccio uguale 0 in questo, modo sto dicendo al mio, compilatore assegna alla variabile statica in stanza se il valore di 0 compilandola Ora vedrete che non ho: errori rimuoviamo quindi questa istruzione che non serve anche se adesso non d, pi errore, prima di caricare andiamo, a stampare le informazioni per tutte e tre le classi altrimenti non vediamo, differenze quindi tutti e due T3 che, a questo punto Carichiamo apriamo il serial, monitor, vediamo, cosa, succede, Ok, Stampa, tutto, un po appiccicato vedete tutti e tre abbiamo, il valore di tempo e poi in stanza vale sempre, zero, a questo punto nulla di stravolgente Anche perch non modifichiamo, istance andiamo nel, costruttore e incrementiamo in stanza e Faccio pi pi qui Lo incrementiamo sfruttiamo anche, il distruttore e nel distruttore qua mettiamo meno meno cos che quando la classe, viene liberata andiamo, a decrementare il numero di stanze ricarichiamo Vediamo se adesso viene gestito correttamente apriamoci del monitor, vedete, che stampa, tutte e tre le classi.

https://www.youtube.com/watch?v=T6QqE6ZCZPE