[Moscow.pm] Почему код так работает?
Игорь Гердлер
igor на gerdler.ru
Пт Май 30 08:47:09 PDT 2008
Denis Evdokimov wrote:
> Кстати, ОН ЕЁ НЕ ВИДИТ
Денис, он видит :о)
#! /usr/bin/perl
use strict;
use warnings;
my $test = 10;
warn 'main: ', \$test, ' ', $test;
my $func1 = sub {
warn 'func1: ', \$test, ' ', $test;
$test = 20;
sub func2 {
warn 'func2: ', \$test, ' ', $test;
$test = 30;
}
};
$func1->();
func2();
$func1->();
func2();
$func1->();
func2();
func2();
func2();
func2();
main: SCALAR(0x804eb30) 10 at ../../test.pl line 6.
func1: SCALAR(0x804eb30) 10 at ../../test.pl line 9.
func2: SCALAR(0x809c098) at ../../test.pl line 12.
func1: SCALAR(0x804eb30) 20 at ../../test.pl line 9.
func2: SCALAR(0x809c074) 30 at ../../test.pl line 12.
func1: SCALAR(0x804eb30) 20 at ../../test.pl line 9.
func2: SCALAR(0x809c098) 30 at ../../test.pl line 12.
func2: SCALAR(0x809c074) 30 at ../../test.pl line 12.
func2: SCALAR(0x809c098) 30 at ../../test.pl line 12.
func2: SCALAR(0x809c074) 30 at ../../test.pl line 12.
С уважением, Игорь Гердлер (ginnie)
Подробная информация о списке рассылки Moscow-pm