Sommario:
Definizione - Cosa significa Stack Unwinding?
Stack svolgendo è il metodo utilizzato in C ++ e linguaggi di programmazione simili quando si decostruiscono le voci di funzione per ripristinare o pulire i record durante il runtime. Questo di solito viene fatto quando il controllo passa da un record al record chiamante o quando un'eccezione viene scartata e il controllo viene trasferito da un blocco try a un gestore nel linguaggio C ++.
Techopedia spiega Stack Unwinding
Lo svolgendo dello stack viene eseguito automaticamente all'uscita da un processo o da un blocco di codice in un programma. In un blocco di programma, gli oggetti costruiti all'interno di tale ambito di blocco non possono essere trasferiti o accessibili da un altro blocco. Questo è il motivo per cui quando un certo controllo lascia quel blocco di programma, tutti gli oggetti che vengono dichiarati o costruiti al suo interno verranno automaticamente distrutti dai distruttori. Nella programmazione orientata agli oggetti, i distruttori sono metodi che vengono chiamati durante la distruzione degli oggetti. Usano l'algoritmo dello stack o il processo last-in, first-out. L'oggetto dichiarato per ultimo sarà il primo ad essere distrutto dal distruttore. La pila viene cancellata o srotolata.
