2014-09-10 232 views
1

else語句定義語法將支持Ruby語法與下面的代碼:與紅寶石2.1.1

class Test 
def test 
    #some code here 
else 
    #some code here 
end 
end 

我發現這個語法是有效和Ruby解釋器沒有標誌爲這個任何異常。 如果這是有效的,任何人都可以解釋這種語法的用法。

目前使用Ruby 2.1.1

回答

5

,這是合法的Ruby語法但rescue外觀例如:

#exm.rb 
class Test 
def test 
    #some code here 
else 
    #some code here 
end 
end 

和運行(-w turn warnings on for your script):

$ ruby -w exm.rb 
exm.rb:7: warning: else without rescue is useless 

檢查語法(-c check syntax only) :

ruby -c exm.rb 
arra.rb:7: warning: else without rescue is useless 
Syntax OK 

rescue

#exm.rb 
class Test 
    def test 
    #some code here 
    rescue 
    #some code here 
    else 
    #some code here 
    end 
end 

檢查語法:

ruby -c exm.rb 
Syntax OK 

閱讀begin + rescue + else

+0

我不知道多久我寫了這對SO了,但顯然它不能重複足夠:**閱讀警告**! – 2014-09-10 13:33:27