Thread Ungewöhnliches Benchmarkergebnis (21 answers)
Opened by ppm1 at 2004-05-27 00:23

Strat
 2004-05-30 02:03
#82794 #82794
User since
2003-08-04
5246 Artikel
ModeratorIn
[Homepage] [default_avatar]
[quote=sri,29.05.2004, 02:31][quote=Strat,28.05.2004, 23:52]stimmt nicht; our() erstellt ebenso package-Variabeln wie use vars(), nur dass our erst ab perl5.6 vorhanden ist[/quote]
Stimmt wohl. :)

perldoc -f our erklärt es ganz gut.[/quote]
AS 809:
Code: (dl )
1
2
3
4
5
C:\>perl
our $Var = 20;
while ( ($x, $y) = each %::) { print "$x => $y\n" if $x =~ /Var/ }
^D
Var => *main::Var

oder:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
C:\Dokumente und Einstellungen\Administrator>perl
package XYZ;
our $Var = 20;
while (($x, $y) = each %::) {
 print "$x => $y\n";
}
print "-------------------\n";
while (($x, $y) = each %XYZ::) {
 print "$x => $y\n";
}
^D
... gekuerzt fuer main
-------------------
... gekuerzt: XYZ
Var => *XYZ::Var

identisch mit use vars => package-variable
Das einzige, was our gegenueber use vars mehr hat ist, dass man es ueber packagegrenzen hinweg verwenden kann, weil da intern automatisch das package vorangesetzt wird, wobei es aber trotzdem eine package-Variable ist, wie die obigen codebeispiele gut zeigen.
perl -le "s::*erlco'unaty.'.dk':e,y;*kn:ai;penmic;;print"
http://www.fabiani.net/

View full thread Ungewöhnliches Benchmarkergebnis