分类:
2008-11-05 21:34:18
|
在这段代码中,只有$a[0]是不起作用的,而$a->[0], $$a[0], @$a[0]都是起作用的,从这点可以看出,在这里,是$a的作用就是一个指针,它的作用就与后面的$rb的作用相同,通过$a去访问时,就需要使用$$a[0]或者是$a->[0]的方式.
再看下面这段代码:
|
在这里, $h{"test"}->[1]的方式是很正常的,因为$h{"test"}是一个引用类型,要访问其中的元素,则使用->的方式. 而${${"test"}}[1]也是正常的,加上{}是因为优先级的原因. 而最后的$h{"test"}[1]看起来则少了一点什么东西, 在黑豹书中讲到
"谈到程序员的效率,让我们谈论一个节省键盘敲击次数的技巧.在两个下标之间(也只有在下标之间)你可以省去箭头符号"->".也就是说,下面的这两条语句是等效的"
$h{"test"}->[1] 与 $h{"test"}[1]
所以在这种有下标的情况下,就可以节省"->"了.