[Moscow.pm] Фокусы с постфиксным if
Alexander Q
qalex на ashmanov.com
Вт Апр 14 05:44:22 PDT 2009
use strict;
use warnings;
use Data::Dumper;
for(1..10) {
my $t = 'abcd' if 0;
print Dumper $t;
$t = 'def';
}
В Втр, 14/04/2009 в 16:39 +0400, Eugene Kosov пишет:
> Где фокус?
> Замени 'undef' на что-нить другое, чтоб не смущало.
Пожалуйста.
Фокус в том, что
1) my $t = 'abcd' if 0; НЕ выполняет всю строку (начиная с my). Тогда
use strict должен бы ругнуться на $t='def';, но он молчит
2) my $t = 'abcd' if 0; выполняет my $t, но не выполняет присваивание
='abcd'. Тогда должно бы дампиться $VAR1 = undef;
А оно работает как-то по-другому, непонятно для меня.
--
With best regards,
Alexander Q mailto:qalex на ashmanov.com
Подробная информация о списке рассылки Moscow-pm