次の Ruby コードがあるとします。
def result(b=25)
puts b
end
を呼び出すだけresultで、25 が出力されます。これまでのところ、問題ありません。
しかし、次のように別のメソッドから呼び出したいと思います。
def outer(a,b)
#...do some stuff with a...
result(b)
end
outer(1,5)5 を出力したいのですがouter(1)、単純に 25 を出力します。実際には、「未定義」をresultメソッドに渡したいのです。
これを行う方法はありますか?(悲しいことに、単純に を使用することはできませんdef outer(a,b=25)。なぜなら、 のデフォルト値は、実際にはメソッドbであるクラスのインスタンス変数だからです。)result