Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
Railsコードで、次のメソッド定義に出くわしましたdef initialize(*)
def initialize(*)
意味はわかりdef foo(*a)ますが、の後に識別子名を省略することの意味がわかりません*。このメソッドに渡された引数にどのようにアクセスしますか?
def foo(*a)
*
これが私の推測です。
それは2行目のために機能します:
def initialize(*) super ... end
したがって、メソッドは任意の数の引数を受け取り、それらすべてをに渡しsuperます(ご存知のように、super引数がない場合は、元のメソッドからすべての引数を取得することを意味します)。
super
そしてこの場合、引数の名前は必要ありません。