お世話になります。Ruby技術者認定試験合格教本Goldの勉強中にわからないことがあったので質問します。
###問題のコード
Ruby
1class Hoge 2 def fuga(o=nil) 3 hoge 4 end 5 6 private 7 def hoge 8 puts "Hoge" 9 end 10end 11 12Hoge.new.fuga(Hoge.new) #=> Hoge
###わからなかった点
Hoge.new.fugaによってfugaメソッドを呼び出そうとしていることはわかりますが、その後fugaメソッドの引数にHoge.newが渡されています。
確かにfugaには引数が必要だと思いますが(o=nil)
とされていて、なぜここにHoge.newを入れて渡してあげることで、動作するのかがわかりませんでした。
何か理解するためのヒントをいただけたら幸いです。よろしくお願いします。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/06/17 00:44