0

谁能告诉我?以下在红宝石程序中意味着什么:

obj = myClass.new
(Err("Error: Can't get myClass instance"); exit) if obj == nil

提前致谢

4

3 回答 3

3

这相当于:

obj = myClass.new
if obj == nil
   Err("Error: Can't get myClass instance")
   exit
end

我个人会使用上面显示的版本,因为我认为它更具可读性。

于 2012-06-19T10:08:31.923 回答
1
# create instance of a class with non-standard name. 
obj = myClass.new
# call function Err and exit if myClass.new returned nil
(Err("Error: Can't get myClass instance"); exit) if obj == nil

我发现这段代码令人困惑。在正常情况下,new永远不会返回 nil。如果它在您的应用程序中存在,那么您在某处有更复杂的代码。这不是你最大的问题:)

于 2012-06-19T10:06:48.937 回答
0

这意味着 that Err("Error: Can't get myClass instance")is called 后跟exitif objis nil

在 ruby​​ 中,您可以编写这样的 if 语句(code) if (expression)

于 2012-06-19T10:07:33.780 回答