|
|
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
|