Thread Syntaxcheck sub in hash (12 answers)
Opened by bianca at 2010-10-24 10:48

renee
 2010-10-24 13:29
#142141 #142141
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
2010-10-24T09:30:06 topeg
use wird nur einmal falls möglich (außerhalb von string-eval) und ist dann im ganzen Script gültig, nur "export" wird immer wieder ausgeführt und exportiert Funktionen in den aktuellen Namespace. Das heißt du kannst das "use" fast überall einsetzen und es wird nur einmal geladen wenn perl daran "vorbei kommt".
Das "vorbei kommt" ist missverständlich. Ein use wird *nicht* zur Laufzeit ausgeführt, sondern zur Compile-Zeit.

perl -MData::Dumper -e 'print Dumper \%INC; print CGI->header; my $var = sub { use CGI };'

zeigt Dir, dass bei den prints das CGI-Modul schon geladen ist.

Deswegen finde ich es immer besser, die uses an den Anfang des Programms/Moduls zu stellen.
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/

View full thread Syntaxcheck sub in hash