[Vienna-pm] use strict und dann wieder nicht....

Klaus Zahradnik klaus at kwz.at
Sun Feb 22 05:54:17 CST 2004


Hallo!

Ich lese gerade "Beginning Perl". Am Anfang des Buches wurde dem Leser
erklärt, er solle doch _immer_ use strict; verwenden.

Im Kapitel "Subroutines" wird auch der "namespace" erklärt. Dazu gibt es
dann auch folgenden Code:

#!/usr/bin/perl
use warnings;
                                                                                
$main::name = "Klaus Zahradnik";
$Fred::name = "Fred Flintstone";
$Barney::name = "Barney Rubble";
                                                                                
print "\$name in package main is $name\n";
print "\$name in package Fred is $Fred::name\n";
print "\$name in package Barney is $Barney::name\n";


So steht der im Buch.
Ich habe allerdings use strict reingeschrieben. Das hatte dann diese
Fehlermeldung zu folge:
[klaus at cujo Scripts]$ ./globals.pl
Variable "$name" is not imported at ./globals.pl line 9.
Global symbol "$name" requires explicit package name at ./globals.pl
line 9.
Execution of ./globals.pl aborted due to compilation errors.

Wenn ich Zeile mit der ersten print Anweisung wie folgt ändere,
funktioniert das auch mit use strict:
print "\$name in package main is $main::name\n";

Im orignalzustand funktioniert das natürlich auch ohne use strict.

Ich weiss jetzt nicht mehr, was ich machen sollte. To use strict or not
to use strict?
Oder anders gefragt, verwendet man das nur um Anfängern suberen Stil
anzugewöhnen?

best regards und vielen Dank,
Klaus

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : http://mail.pm.org/pipermail/vienna-pm/attachments/20040222/d64f48a0/attachment.bin


More information about the Vienna-pm mailing list