Perl6 匿名副程式和 Blocks/Pointy Blocks 的差別

Home » Perl6 » Perl6入門 » Perl6 匿名副程式和 Blocks/Pointy Blocks 的差別
2015-08-02 Perl6入門 1 則留言

Blocks 和 Pointy Blocks(即 { } 和 -> { })雖然也能傳入參數,但畢竟它不是副程式,沒有函式的環境(function context),也就是說:若在 block 中有 return 的話,它會由父函式立即返回,父函式因此停止執行,如下例:

但匿名副程式則不然,sub 中的 return 只會結束 sub 本身,父函式 test-in 仍會繼續執行:

One thought on : Perl6 匿名副程式和 Blocks/Pointy Blocks 的差別

LEAVE A COMMENT

forty four  ⁄    =  11

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料