|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Ildar 2:5020/400 23 Jun 2002 20:28:26 To : All Subject : Странности с переменными -------------------------------------------------------------------------------- привет, 1. есть скрипт test.pl: #!/usr/bin/perl use StTest; print("Before f1\n"); StTest::f1(); print("Before f2\n"); StTest::f2(); 2. есть модуль StTest.pm: package StTest; require Exporter; @ISA = qw(Exporter); @EXPORT = qw( ); my $var = ''; sub f2 { print "var = $var\n"; }; sub f1 { $var = "value"; print "var = $var\n"; }; 1; Все нормально работает: Before f1 var = value Before f2 var = value Hо при этом происходит следующая странность - если описание переменной $var (my $var = '') опустить ниже (sub f2), то перестает работать: Before f1 var = value Before f2 var = Я не могу понять - это нормальное поведение или какой-либо баг. Если это нормальное поведение, то можно от него избавиться, т.е. сделать так, чтобы $var был виден в независимости от относительного положения касательно f2() ? -- Отправлено через сервер Форумы@mail.ru - http://talk.mail.ru --- ifmail v.2.15dev5 * Origin: Talk.ru (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/6488239404d4.html, оценка из 5, голосов 10
|