Perl에서 특수 변수 $@은 무엇을 의미합니까?
문제
다음 코드를 이해하려고합니다.
sub foo {
...
if ( $@ ) {
...
die $@;
}
}
해결책
구문 오류 또는 런타임 오류가 있거나 "다이"문이 실행되면 정의되지 않은 값은 "Eval"으로 반환되고 $@는 오류 메시지로 설정됩니다. 오류가 없으면 $@는 널 문자열임을 보장합니다.
또한보십시오 perldoc perlvar
.
다른 팁
$@
마지막의 오류 메시지를 포함하는 마법 변수입니다. eval
명령이 있다면.
IF 루프는 $@를 덫에 걸릴 수 있도록 Eval이 예정되어 있어야합니다.
평가 () 중에 $@는 항상 실패로 설정되어 성공에 대해 지우겠습니다.
Eval () 내부의 WHR 코드가 컴파일되지 않은 경우 $@가 컴파일 오류로 설정됩니다.
제휴하지 않습니다 StackOverflow