http://www.perlmonks.org?node_id=187295


in reply to Hash references and efficiency

Yes, it populates the hash. You are dereferencing the original hashref, creating a copy and assigning it to a new hash.

If you don't like typing curly brackets, try the arrow syntax ($hashref->{key}). BTW, treating a hashref differently than a regular hash can be considered a good thing when you review old code.

Replies are listed 'Best First'.
Re: Re: Hash references and efficiency
by simeon2000 (Monk) on Aug 03, 2002 at 13:26 UTC
    I've actually always coded like this:

    my %hash = ( jim => 'fred', babs => 'buster' ); my $href = \%hash; print $$href{jim}, "\n";

    But you're saying that the $href->{jim} syntax is preferred?

    --
    perl -e "print qq/just another perl hacker who doesn't grok japh\n/"
    simeon2000|http://holdren.net/

      Why are you doing it like that? There's no reason to use a hashref in the above code. Use refs for complex data structures or for passing hashes and arrays back and forth between subs.