2012-07-11 72 views

回答

4

Perl不提供trycatch關鍵字。爲了捕獲die引發的「例外」,您可以設置$SIG{__DIE__}處理程序或使用eval。塊形式比字符串形式更受歡迎,因爲解析在編譯時會發生一次。

eval { 
    // statement 1 
    // statement 2 
} 
if ([email protected]) { 
    warn "caught error: [email protected]"; 
} 

有提供更爲傳統try - 樣功能性的各種模塊,如Try::Tiny

+2

你錯過了;在eval {...}的末尾;聲明。出於這樣的原因,使用Try :: Tiny通常更容易 – LeoNerd 2012-07-11 18:17:15

4

你可能想要的CPAN模塊,如Try::Tiny之一:

use Try::Tiny; 

try { 
    # statement 1 
    # statement 2 
} 
catch { 
    print "Error\n"; 
}; 
相關問題