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
}
プログラムには、複数のBEGINandENDブロックが含まれる場合があります。BEGINブロックは、遭遇した順に実行されます。ENDブロックは逆の順序で実行されます。
「 Does begin . . . end while denote a 'block'?」にもほぼ同じ投稿があります。
チュートリアルポイントでブロックの詳細を読む