2009/1/16 agentzh <[email protected]>: > 2009/1/16 e280s 4ever <[email protected]> >> >> 那如果cnhack说的正确的话,你说的应该不对吧(我没用过perl6)。 >> @list[0]可以理解,合法, >> 但%hash{'aaa'}肯定不应该合法! > > Larry 的想法是在 Perl 6 中,让变量的 sigil 永远和它自身的类型保持一致,而不管这个变量是怎么用的(比如下标访问啥的),目的是 > > 1. 更一致,grep 友好 > 2. 太多的初学者会对 sigil 的不一致使用产生疑问,为了教学方便,也省一个 FAQ > > 在 Perl 5 中 @a[...] 主要用于数组切片,比如: > > $ perl -e '@a=qw(x y);print @a[0..1]' > xy > > 只不过在标量上下文中返回切片中的最后一个元素,而非切片的长度:
因为 slice 返回的是一个 list 而不是 array,而在 scalar context 中,list 返回它的最后一个元素, array 则返回其长度。 lee --~--~---------~--~----~------------~-------~--~----~ 您收到此信息是由于您订阅了 Google 论坛“PerlChina 论坛”论坛。 要在此论坛发帖,请发电子邮件到 [email protected] 要退订此论坛,请发邮件至 [email protected] 更多选项,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问该论坛 -~----------~----~----~----~------~----~------~--~---
