24件ヒット
[1-24件を表示]
(0.016秒)
キーワード
-
ruby 1
. 6 feature (12) - 制御構造 (12)
検索結果
先頭2件
-
ruby 1
. 6 feature (102.0) -
ruby 1.6 feature ruby version 1.6 は安定版です。この版での変更はバグ修正がメイン になります。
...from -:14
ruby 1.6.5 (2001-10-05) [i586-linux]
: Subclass of String and Array
String, Array のサブクラスで特定のメソッドを呼ぶと、String, Array
になっていました。
class Foo < String
end
p Foo.new("").class......Foo
Foo
Foo
Foo
class Bar < Array
end
bar = Bar.new
p bar.class
p bar.push(1,2,3)
p bar.class
p bar[0,0].class # => Array ???
p bar[0,1].class
p ((bar * 5).class)
=> -:9......変数のエイリアスを許さないようにしました。
((<ruby-dev:13287>))
: ((<open3/Open3.popen3>))
終了したプロセスが at_exit を呼ばないようにしました。
(exit を exit! に修正) ((<ruby-dev:13170>))
: ((<SizedQueue>))#pop
以下のコードでデッ... -
制御構造 (30.0)
-
制御構造 条件分岐: * if * unless * case 繰り返し: * while * until * for * break * next * redo * retry 例外処理: * raise * begin その他: * return * BEGIN * END
...そうはならない
//}
代わりにそのようなメソッド(イテレータ)を定義する必要があります。
//emlist[][ruby]{
class Array
def each2
i = 0
while i < self.size
yield self[i], self[i+1]
i += 2
end
end
end
//}
====[a:break] break
//emlist[例......のような目的には Kernel.#at_exit を使
います。
//emlist[][ruby]{
5.times do |i|
END { p i }
end
# => 0
//}
END をメソッド定義式中に書くと警告が出ます。
意図的にこのようなことを行いたい場合は Kernel.#at_exit を使
います。
def foo......ethod; use at_exit
nil
"end"
END は、BEGIN とは異なり実行時に後処理を登録します。したがっ
て、以下の例では END ブロックは実行されません。
if false
END { p "end" }
end
END や Kernel.#at_exit で登...
