Salve
dovrei azzerare tutte le variabili di una funzione in un colpo solo...
si può fare richiamando direttamente la funzione?
es funzione.clear?
grazie
Salve
dovrei azzerare tutte le variabili di una funzione in un colpo solo...
si può fare richiamando direttamente la funzione?
es funzione.clear?
grazie
Delphi fa parte dei linguaggi "rientranti", cioè ogni volta che entri in una funzione viene generato (se necessario) un nuovo stack-frame e quindi nuove variabili che di solito sono vuote.
Da come ho capito le variabili vuoi azzerarle dall'interno della funzione stessa, quindi si tratta di variabili locali?
Credo (al 99%) che non esiste un comando per azzerare tutte le variabili in un colpo solo, ne tantomeno puoi fare assegnazioni a catena come in C.
Se vuoi puoi fare cosi:
Spero che l'alcool non mi ha fatto scrivere grosse stupidagini.codice:function Prova : boolean; var x, j : integer; k : byte; s : string; procedure AzzeraVariabili; begin x := 0; j := 0; //ecc.. end; begin //tutto quello che ti serve. AzzeraVariabili; end;![]()
QUINDI è L'UNICO MODO...
GRAZIE
CIAO
Dò la mia piena conferma a quanto detto.
Ma cosa intendi per azzerare? Se intendi "assumere un valore iniziale", tutte le variabili locali ce l'hanno, mentre i parametri posseggono il valore passato dalla chiamata della funzione.
Comunque non esiste una funzione di azzeramento totale; esegui le singole inizializzazioni, se diverse dal valore predefinito, "manualmente".
Se le variabili sono tante, magari dovresti rivedere il concetto con il quale hai steso il codice: forse c'è modo di fare diversamente.
Ciao!![]()
MARCO BREVEGLIERI
Software and Web Developer, Teacher and Consultant
Home | Blog | Delphi Podcast | Twitch | Altro...