-
To use a reference, say $ref, you put {$ref}
in place of a variable name (not counting the $,
%, or @):
$scalar ${$sRef}
@array @{$aRef}
$array[0] ${$aRef}[0]
$#array $#{$aRef}
%hash %{$hRef}
$hash{KEY} ${$hRef}{KEY}
@hash{@list} @{$hRef}{@list}
-
If the reference is held in a simple scalar variable, then
the { and } can be dropped:
$scalar $$sRef
@array @$aRef
$array[0] $$aRef[0]
$#array $#$aRef
%hash %$hRef
$hash{KEY} $$hRef{KEY}
@hash{@list} @$hRef{@list}
-
If you are getting a scalar from a hash or array, then you
can replace ${$ref} with $ref->:
$array[0] $aRef->[0]
$hash{KEY} $hRef->{KEY}
-
If the reference is in a hash or array, then you can drop
the -> between the adjacent [0]
and {KEY}:
${$aRef->[0]}[1] $aRef->[0]->[1] $aRef->[0][1]
${$aRef->[0]}{KEY} $aRef->[0]->{KEY} $aRef->[0]{KEY}
${$hRef->{KEY}}[1] $hRef->{KEY}->[1] $hRef->{KEY}[1]
${$hRef->{A}}{B} $hRef->{A}->{B} $hRef->{A}{B}
I hope that makes things much clearer.
-
tye
(but my friends call me "Tye")
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.
|