Cursus Raku / Geavanceerd / Besturingsstructuren / Blokgerelateerde phasers / Exercises
Opruimen bij verlaten
Probleem
De echte kracht van LEAVE is dat het wordt uitgevoerd
hoe het blok ook verlaten wordt — inclusief een vroegtijdige
return.
Schrijf een subroutine work waarvan de body begint met
een LEAVE-phaser die Cleanup afdrukt. Druk
vervolgens, nog steeds binnen de subroutine, Working af,
gebruik return om onmiddellijk terug te keren, en zet een
say 'never reached'-regel na de return. Roep
de subroutine aan. De vroegtijdige return slaat die laatste
regel over, maar Cleanup wordt nog steeds afgedrukt.
Voorbeeld
Het programma drukt af:
Working
CleanupOplossing
Cursusnavigatie
← Blokgerelateerde phasers | Oplossing: Opruimen bij verlaten →