while trueとloopのちがい。

[ruby-list:20222] Re: while TRUE とloop の違いを教えてください

制御構造であるwhileとイテレータであるloopの間の本質的な違い はloopの方はループ本体がブロックである点です。そしてブロック は新たなスコープを導入します。

おー。

# 100で止まる
while true
foo ||= 0; foo += 1; puts foo; break if foo > 99
end
# 止まらない
loop do
foo ||= 0; foo += 1; puts foo; break if foo > 99
end

なるほど!

コメント

  1. もぎゃろぐ より:

    ||=での初期化

    あんまり初歩的な話を書くのも恥ずかしいのですが。 なーに、いつかすごいプログラ…

タイトルとURLをコピーしました