다음 perl 코드가 있습니다. 나는 -w를 사용하고 엄격하게 사용한다. 왜 @ LDRATA :: SUITES에서 오류가 발생하지 않습니까? $ x는 무엇을합니까? 변수가 선언 된 또는 정규화되지 않은 경우perl 왜 이것이 strict를 사용하여 오류를 생성하지 않습니까?
#!/grid/common/bin/perl -w
use strict;
for (@LDRATA::SUITES) { print("one\n"); }
for ($LDRATA::SUITES[0]) { print("two\n"); }
for($x) { print("three\n"); }
'$ x'이 유발하는 오류를 읽었습니까? '글로벌 심볼 "$ x"명시 적 패키지 이름 필요 ... "? 꽤 자명 한 것 같습니다. – cHao
'$ main :: x'을 타이핑하면 불평하지 않을 것입니다. '$ x'에 대한 명시 적 패키지 이름은 어느 것입니까? – TLP
$ x에서 오류가 발생할 것으로 예상합니다. 이것은 오류를 보여주기위한 테스트 프로그램 일뿐입니다. 왜 LDRATA가 오류를 생성하지 않는지 알고 싶습니다. 나는 당신이 입력 한 것에서 감각을 얻었습니다. 패키지 이름을 제공하면, 가짜 일지라도, 나는 오류를 얻지 않을 것입니다. – kdubs