5
perl -e 'use strict;use warnings;$a=2;print $a'

なしでグローバル変数を宣言しても警告が表示されないourようですが、このキーワードはいつ必要ですか?

4

2 に答える 2

16

$a$bは特殊なケースです-それらはsort(たとえばsort { $a <=> $b })のために予約されており、独自の変数名には使用しないでください-他の何かを使用して再試行し、何が起こるかを確認してください!

于 2011-07-14T08:44:16.077 に答える
11

perlvarから:

   $a
   $b      Special package variables when using "sort()", see "sort" in
           perlfunc.  Because of this specialness $a and $b don't need to
           be declared (using "use vars", or "our()") even when using the
           "strict 'vars'" pragma.
于 2011-07-14T08:45:48.400 に答える