Ruby で何BEGIN
を意味し、どのように呼ばれますか? たとえば、次のコードがあるとします。
puts "This is sentence 1."
BEGIN {
puts "This is sentence 2."
}
なぜputs "This is sentence 2."
最初に実行されるのですか?
Ruby で何BEGIN
を意味し、どのように呼ばれますか? たとえば、次のコードがあるとします。
puts "This is sentence 1."
BEGIN {
puts "This is sentence 2."
}
なぜputs "This is sentence 2."
最初に実行されるのですか?
BEGIN
そして、END
他の何かが実行される前、または他のすべてが実行された後、インタープリターが終了する直前に呼び出されるブロックを設定します。
たとえば、これを実行すると:
END { puts 'END block' }
puts 'foobar'
BEGIN { puts 'BEGIN block' }
出力:
BEGIN ブロック フーバー ENDブロック
BEGIN
通常、 andEND
ブロックにはもう少し論理的な順序を使用しますが、それはそれらが何をするかを示しています。
BEGIN
:プログラムの順次実行開始前に無条件に実行するコードをコードブロックで指定します。メソッドへの前方参照をシミュレートするために使用されることがあります。
BEGIN
とEND
ブロック
すべての Ruby ソース ファイルは、ファイルの読み込み中 (BEGIN
ブロック) およびプログラムの実行終了後(ブロック) に実行されるコード ブロックを宣言できますEND
。
BEGIN {
begin block code
}
END {
end block code
}
プログラムには、複数のBEGIN
andEND
ブロックが含まれる場合があります。BEGIN
ブロックは、遭遇した順に実行されます。END
ブロックは逆の順序で実行されます。
「 Does begin . . . end while denote a 'block'?」にもほぼ同じ投稿があります。
チュートリアルポイントでブロックの詳細を読む