require
如果 a不成功,我想避免错误。
我可以这样做:
begin
require 'unexisting_script'
rescue LoadError
end
我尝试对单行条件做同样的事情:
require 'unexisting_script' rescue LoadError
并得到错误no such file to load -- unexisting_script (LoadError)
对于其他异常/命令,我对单行救援没有任何问题,这有效:
1 / 0 rescue ZeroDivisionError
我也尝试将命令括起来,但没有成功:
(require 'unexisting_script') rescue LoadError
我可以将所有内容放在一行中;
:
begin require 'unexisting_script'; rescue LoadError; end
但我仍然想知道,为什么最短的版本不起作用。
我发现了一些相关的问题,但没有一个提到 require 和 rescue 的问题:
我的问题:
我可以rescue
在单线条件下使用require
吗?如果是:如何?如果不是:为什么?