Language/Perl

[Perl] BEGIN Block

VIR&US 2024. 11. 10. 00:49
반응형

목차

    BEGIN Block

    BEGIN 블럭은 해당 블럭의 Parsing이  끝나면 바로 실행됩니다. 

    • 파일의 나머지 부분의 Parsing이 채끝나지 않았더라도 실행됩니다. 
    • 실행 시간에는 무시됩니다. 
    • BEGIN 블럭이 여러개 있다면, compiler가 위에서 아래로 만나는 순서대로 실행합니다. 
    • BEGIN문을 조건문 안에 두었더라도 가장 먼저 실행 됩니다. 조건문 내부에 쓰지 않는것이 좋습니다.(조건문 작동 X) 
    • Compile 중에 조건에 따라 어떤 작동을 하고 싶다면, BEGIN 블록 내에 조건문을 두면 됩니다.

    Example

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    use strict;
    use warnings;
     
     
    print "This gets printed second";
     
    BEGIN {print "This gets printed first";}
     
    print "This gets printed third";
    cs

    Result

    This gets printed first
    This gets printed second
    This gets printed third

    BEGIN이 없다면 second, first, third 순으로 print 되지만, BEGIN이 먼저 실행되어 first, second, third 순으로 print 됩니다.

    728x90
    반응형