Perl ve kapsam belirleme ile ilgili bir sorum var. Çok çeşitli değişkenlerle ortak bir dosyam var. Ana dosyamda ortak dosyaya ihtiyacım var, ancak değişkenlere erişemiyorum; kendi kapsamı dışında görünüyorlar. our
bildiriminin bu sorunun üstesinden geleceğini düşündüm, ancak işe yaramıyor gibi görünüyor.Perl kodum neden başka bir dosyada tanımladığımız() değişkenlerimizi göremiyor?
Senaryo 1: common.pl
#!/usr/bin/perl
our $var1 = "something";
our $var2 = "somethingelse";
Senaryo 2: ftp.pl
#!/usr/bin/perl
use strict;
use warnings;
require('common.pl');
print $var1;
hata alıyorum:
Global symbol "$var1" requires explicit package name
küresel sembol, $ var1
yapılan bir senaryo üzerinde çalışmaya got nasıl açık bir paket adı gerektirir. – jrockway
http://perl.plover.com/FAQs/Namespaces.html –
Öğe 1 Etkili Perl Programlamada (ISBN: 0201419750, Joseph Hall ve Randal Schwartz) şu adresten yararlanabilirsiniz: Ad alanlarınızı bilin. Bunun için harika bir referans ve harika bir kitap. –