Beefy Boxes and Bandwidth Generously Provided by pair Networks
Think about Loose Coupling
 
PerlMonks  

Re^2: Global variable vs passing variable from sub to sub

by Anonymous Monk
on Sep 14, 2004 at 19:41 UTC ( #390962=note: print w/ replies, xml ) Need Help??


in reply to Re: Global variable vs passing variable from sub to sub
in thread Global variable vs passing variable from sub to sub

This has already been covered in other posts, but this may clarify things for Wassercrats.

If you don't scope your variables, it is not immediately obvious whether:
1) You variables will have changed by calling a sub.
2) If the variables did change, whether they were changed on purpose, or accidently.

$x = 0; DoStuffX(); print "As long as no one used global variables, I know that x = 0 ", "without needing to know what DoStuffX does.\n"; if ($x != 0) { print "Nope, I need to spend time looking through ", "DoStuffX to find out why x changed. I really ", "wish the guy used \$x=DoStuffX(\$x) so that I ", "would know whether he changed x intensionally ", "or not.\n\n" }; $y = 0; DoStuffY($y); print "As long as no one used global variables, I know that y = 0 ", "without needing to know what DoStuffY does.\n"; if ($y == 0) { print "Yippie! I can go home early!\n\n" }; sub DoStuffX { # lost of code involving $x $x=$x+1; # lots of code involving $x }; sub DoStuffY { my $y = shift @_; # lost of code involving $y $y=$y+1; # lots of code involving $y };


Comment on Re^2: Global variable vs passing variable from sub to sub
Download Code

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://390962]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others making s'mores by the fire in the courtyard of the Monastery: (5)
As of 2014-09-21 01:39 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    How do you remember the number of days in each month?











    Results (165 votes), past polls