close

Perl 函式 - eval

 

■ 功  能

① 捕獲異常

② 編譯和運行代碼

 

 

■ 語  法

① eval EXPR

② eval BLOCK

 

 

■ 用  法

EXPR 會經過解析且執行,如同是一段Perl程式,其是在目前的Perl程式中執行,所以任何的變數設定之後都會被保留。

eval 的程式碼被視為一個區域,所以在eval 內宣告的區域變數都能在eval 的區域內。

EXPR 若省略,算符則會分析 $_ 。

 

■ 傳  回   值

eval 所傳回的值,是所執行的最後一個運算式的值,和副程式是一樣的。

亦可使用 return 算符在eval的中間傳回一個值。

語法錯誤或 run-time error(包含位何由die所產生的),eval會傳回一個未義的值,並將錯誤訊息放入 $@ 。若沒有錯誤產生, $@ 會被設成空字串。

 

 

■ 範  例

程式碼

while(<>) {eval; print $@}

 

# make divide-by-zero nonfatal

eval { $answer = $a / $b; }; warn $@ if $@;

 

# same thing, but less efficient

eval '$answer = $a / $b; warn $@ if $@'


#關鍵字 Perl 函式 - eval用法;Perl 函式 - eval語法;Perl 函式 - eval範例;

 

■ Perl  其它函數

▶ Perl 函式|函數|指令集

 


arrow
arrow
    全站熱搜

    News123 發表在 痞客邦 留言(0) 人氣()