Beefy Boxes and Bandwidth Generously Provided by pair Networks
Just another Perl shrine
 
PerlMonks  

Re: What is the difference between the constant construct in Perl and the Readonly construct in Perl?

by tfrayner (Curate)
on Jul 06, 2006 at 09:36 UTC ( #559528=note: print w/replies, xml ) Need Help??


in reply to What is the difference between the constant construct in Perl and the Readonly construct in Perl?

Hi,

A key feature (in my view) of Readonly that others haven't mentioned yet is that a Readonly hashref will prevent you from modifying the referenced hash. The constant pragma, in contrast, only prevents you from changing the top-level reference value. The constant will always point to the same hash, but that hash can be modified. Maybe this might change in future, I don't know, but in the meantime I've been bitten by this not-entirely-constant nature of the constant pragma (inadvertently using a "constant" hash as a global variable...). It's fine for scalar and array values, but a bit dodgy for hashes, IMHO.

cheers,
Tim

  • Comment on Re: What is the difference between the constant construct in Perl and the Readonly construct in Perl?

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://559528]
help
Chatterbox?
[LanX]: White House indicates it could find funds to train 1 million teachers ...
[LanX]: ...no wait
[LanX]: White House indicates it could find funds to train and arm 1 million teachers!
LanX relieved...
[Discipulus]: too much guns in schools? throw more gun at schools! professors in arms

How do I use this? | Other CB clients
Other Users?
Others browsing the Monastery: (9)
As of 2018-02-23 11:32 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    When it is dark outside I am happiest to see ...














    Results (301 votes). Check out past polls.

    Notices?