Jeśli używasz use strict
i use warning
i , jeśli podam typ danych my
, to działa; jeśli nie podam wartości my
, oznacza to błąd.zamieszanie z moją zmienną w perlu
use strict;
use warnings;
my $test=10;
my @arr=(10,20,30);
Gdybym zadeklarować nazwę zmiennej tablicy jako numer:
use strict;
use warnings;
my @100=(10,20,30);
wtedy, gdy uruchomię ten program to mówi o błędzie:
Can't use global @100 in "my" at number_sclar.pl line 28, near "my @100"
Jeśli usunąć że my
i metę Program działa bezbłędnie.
Proszę, proszę, niech ktoś mi powie, dlaczego zmienna my
nie jest obsługiwana przez numeryczną nazwę zmiennej tablicowej?
Chcę poznać zasadę działania mojej zmiennej .. dlatego tutaj zamieściłem. – vara
Cóż, nie mam dobrego wytłumaczenia; Zaryzykuję przypuszczenie, że jest ono przewidziane dla kompatybilności wstecznej, zgodnej ze specjalnymi zmiennymi, takimi jak '$^W'. FYI: możesz użyć 'our @ 100 = (10, 20, 30);' i 'print $ 100 [0];' bez wywoływania błędu. Kombinacja ostrzeżeń i "moje" oznacza, że nazwy liczbowe są niedopuszczalne. –
hmm. nigdy nie myślałem, że to zadziała. – OneSolitaryNoob