|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Evgeny Kariakin 2:5020/744.100 19 May 2000 22:36:24 To : All Subject : Модуль хочу --------------------------------------------------------------------------------
Подскажите, как мне из обычного скрипта сделать модуль, чтобы к нему можно
было обращаться через use ModuleName . Пока так:
--= тут все аплодируют, аплодируют... [InitBans.pm] =--
#!/usr/local/bin/perl -w
#InitBans.pm
package InitBans;
use strict;
use vars qw( @ISA @EXPORT );
use Exporter ();
@ISA = qw( Exporter );
@EXPORT = qw( &init_bans @shows );
my @shows = ();
sub init_bans {
# Идёт формирование массива @shows . Двухмерный.
};
1;
--= кончили аплодировать [InitBans.pm] =---------------
Откуда его вызываем:
--= тут все аплодируют, аплодируют... [manager.pl] =--
#!/usr/local/bin/perl -w
#manager.pl
use strict;
$| = 1;
use InitBans;
# Hа самом деле хочу сделать require , чтобы не импортировались имена. Hадо
# обращаться к переменным как $ModuleName::some_variable , то есть с указанием
# модуля.
print $InitBans::shows[0][0] , "\n";
# Вот тут проблема -- пишется
# Use of uninitialized value in print at manager.pl line 42.
exit( 0 );
--= кончили аплодировать [manager.pl] =---------------
Скажите, почему @shows не виден?
Hу вpоде всё, пока.
Евгений Карякин <waf*mail.ru>
... В здоровом теле -- здоровый псих.
--- Hападавший 'GoldED+/W32' унёс 1.1.4.3 кг золота.
* Origin: Automatic life (2:5020/744.100)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/449839258bb6.html, оценка из 5, голосов 10
|