steckl: require vs. use, Richtigstellung der Richtigstellung

Beitrag lesen

Hi,

Was ich jetzt noch nicht verstehe ist, wenn ich schreibe "BEGIN { print 'test' }" wird das gleich ganz am Anfang ausgefuehrt, egal wo ob es am Anfang oder Ende des Scripts steht - was ja noch klar ist - aber wenn ich "use strict" am Ende des Programms schreibe hat es keine Wirkung auf den vorherigen Quellcode. Das wiederspricht irgendwie deiner Aussage.

Das stimmt nicht, use strict kannst du hinschreiben wo du möchtest. use wird immer vor dem eigentlichen kompilieren ausgeführt.

Ich glaube du hast mich falsch verstanden. Was ich meinte ist, dass

  
print "test $dsafdsaf";  
use strict;  

nicht das gleiche ist wie

  
use strict;  
print "test $dsafdsaf";

Eigentlich sollte doch dann das use strict dem Kompiler sagen, dass er das Programm strenger behandeln soll, bevor es ausgeführt wird?

mfG,
steckl