déroulage Stack qui se passe dans ces deux cas, il est juste que dans des conditions normales l'exécution de la pile n'est déroulée que dans le contexte de la méthode appelante (ou du bloc) lorsque la méthode d'exécution retourne (ou que le bloc est quitté). Les variables locales sont allouées sur la pile, elles sont donc nettoyées dans l'ordre inverse de l'allocation, et c'est ce processus qui est appelé déroulement. Ce n'est pas différent du traitement de tout autre type de données que vous stockez dans une structure LIFO - par ex. défaire refaire. Lorsqu'une exception est levée, le gestionnaire va dérouler la pile via zéro ou plusieurs méthodes jusqu'à ce qu'elle en trouve une qui peut attraper l'exception, ou jusqu'à ce qu'elle atteigne le sommet de la pile, point auquel le gestionnaire d'exceptions non gérées sera appelé.
Il semble conventionnel de n'utiliser le terme de déroulement de pile que dans le cas de la gestion des exceptions, mais c'est le même processus qui se produit dans chacun de ces cas. Le cas spécifique où la pile se déroule en raison de la sortie d'une méthode est appelé return, il ne semble pas y avoir de convention pour nommer ce qui se passe lorsqu'un bloc de code tronqué est quitté.
Il ne s'appelle vraiment rien. Partout dans la norme, il dit des choses comme "... les variables automatiques sont détruites à la fin du bloc". Il ne donne jamais un nom à ce processus. – GManNickG
@GMan - Save the Unicorns: Je suppose que vous pourriez ajouter ceci comme réponse. Mentionner ce que The Standard dit est un argument fort. – sharptooth