Perl

開始 {…};在 Perl 中

  • September 10, 2018

我有一個 perl 腳本:

#!/usr/bin/perl 

BEGIN {
       print "That's BEGIN message\n";
BEGIN { print "That's BEGIN-2 message\n"; };
END { print "That's END message\n"; };
BEGIN { print "That's BEGIN-3 message\n"; };
};

它是這樣工作的:

That's BEGIN-2 message
That's BEGIN-3 message
That's BEGIN message
That's END message

但為什麼?它必須在第 1 行列印That's BEGIN message還是不列印?

第一個在完全BEGIN定義之前不會執行(參見文件)。直到最後一個結束才發生這種情況。}

其他人按照完全定義的方式執行 - 更早。

引用自:https://unix.stackexchange.com/questions/467774