7
returnキーワードはrubyではオプションですので、exitポイントが1つしかない関数の場合、 "return result"は単純に "result"に置き換えることができます。Rubyではリターンステートメントが悪いですか?
これを実行するタイミングはRuby固有のガイドラインがありますか?
私はprocsでの操作が邪魔になるので、できるだけリターンキーワードを避ける傾向があります。
returnキーワードはrubyではオプションですので、exitポイントが1つしかない関数の場合、 "return result"は単純に "result"に置き換えることができます。Rubyではリターンステートメントが悪いですか?
これを実行するタイミングはRuby固有のガイドラインがありますか?
私はprocsでの操作が邪魔になるので、できるだけリターンキーワードを避ける傾向があります。
ルビの "return"は、複数の値を返そうとしている場合にのみ使用されます。例えば
return val1, val2
より早く復帰することが合理的であるかどうか。
#check if needed param is set
return if !param
#some operations which need param
これは、カスケードされたif文でコードを揺らすよりも簡単です。
結論:コードを簡略化するか、理解しやすくするたびにリターンを使用してください。
最初のポイントは間違いありませんか? * def fun; [val1、val2];終わり*もう一つは大丈夫です。 – tokland
配列として複数の値を返すと(前述のように)val1、val2 = funという値を受け取ることはできません。 ret = funをする必要があります。 val1 = ret [0]; val2 = ret [1]で同じ値にします。 – gorootde
申し訳ありませんが、リターンを使用しているかどうかは関係ありません。配列を返しています(後で解凍できます)。* def fun; [1,2];終わり; a、b =楽しみ。 "a =#{a}、b =#{b}" *#=> "a = 1、b = 2" – tokland