2014-06-17 31 views
2

我發現這個在一個應該擴展一些其它類中的模塊:參數列表中單獨的星號是什麼?

module Somemodule 
    def foo(*) 
    do_something_funny 
    super 
    end 
end 

我明白def foo(*args)構建體。單獨星號的目的是什麼?

+1

這就像在C++中一樣'int function(int){}'同樣在ruby *中工作原理相同 –

回答

9

它與*args類似,但沒有提及參數。但是,只要super調用中沒有指定明確的參數,它們就會按照提供給任何super調用的方式傳遞給父級的構造函數(或同名方法)。

這是一個很好的方式來表達你不打算以任何方式處理提供的參數。

相關問題