1
$\ = "\n";
sub foo
{
print("one");
}
foo(); // mark1
sub foo
{
print("two");
}
foo(); //mark2
위의 코드를 실행하면 결과는 2, 2가됩니다. 필자는 Perl이 인터프리터라는 것을 이해하기 때문에 foo (mark1)가 호출 될 때 먼저 인쇄해서는 안되며 foo() (mark2)를 호출하면 두 개가 인쇄되어야한다. 하지만 두 사람이 둘 다 인쇄되는 이유는 무엇입니까?Perl 함수 호출
정말로 컴파일하지 않습니까? – Carcigenicate
'//'는 Perl의 주석이 아닙니다. 주석을 표시하려면'# '을 사용해야합니다. – simbabque
정기적으로 항상'use warnings'과'use strict'를 모든 Perl 5 파일의 시작 부분에 추가하는 것이 좋습니다. –