0
我就遇到了這個示例代碼爲Ruby的異常處理一個成語:救助條款中的多重任務?
begin
eval string
rescue SyntaxError, NameError => boom
print "String doesn't compile: " + boom
rescue StandardError => bang
print "Error running script: " + bang
end
我很困惑特別是關於與多個異常局部變量賦值行: rescue SyntaxError, NameError => boom
。這是否意味着本地變量boom
將採用SyntaxError
或NameError
對象?或者它只是將被分配的NameError
?
它更令人困惑,因爲代碼本身會拋出TypeError
,我想也許是因爲string
是未定義的,但這可能並不重要。
是的,那是我的來源,但來自實體書。作爲電子書可用的版本尚未針對Ruby 2.0進行更新(我認爲)。謝謝你爲我清理它,彼得! –