2009年9月14日星期一

[PerlChina] Re: 对散列引用进行取值操作的问题

->  在表明de-reference  的时候只能表示单数变量,即单个数组元素和hash key,
 
你要多个 只能用 hash(array ) slice ,
@{$var}{qw/ key1  key2 / }   ,  @{$var}[qw/ index1  index2  index3 ] 
 
 
挺清楚的啊


 
2009/9/14 杨杰 <xtyangjie@gmail.com>
说的有道理。以前用c++比较多,结果就混淆概念了。


2009/9/14 cnhack TNT <cnhacktnt@gmail.com>
Perl 里没有指针,只有引用。另外用箭头是很好的习惯,但 @${"key1", "key2", ... "keyN"} 这是 perl 本身的从 HASH 中取多个键对应值的方式,语法如此,与箭头没有关系
在使用 perl 的时候,无须把使用其他语言的经验,习惯强加过来。
:-)

2009/9/14 杨杰 <xtyangjie@gmail.com>

箭头便于标识变量的身份,这样我就可以很方便地看到他是一个指针。我觉得这种现象在标识符比较多的时候更明显一些。另外我觉得,用到指针的地方,还是不要太过省略箭头比较好吧~

2009/9/14 cnhack TNT <cnhacktnt@gmail.com>

不明白这样表述哪里混乱?

2009/9/13 杨杰 <xtyangjie@gmail.com>

各位前辈:

大家好!初学perl,最近新加入perlChina社区。目前遇到一个关于散列的引用问题如下:

对于一个散列的引用,如果要取出其中一个键的值,我们可以如下操作:
my $ref_hash = {"a"=>1, "b"=>2, "c"=>3,};

1.   my $element = $$ref_hash{"a"};

2.   my $element2 = $ref_hash->{"b"};

但是我希望通过一个参数数组取出多个值,现在已经可以的是下面的用法:
1.   my ($e1, $e2) = @$ref_hash{"a","b"};

但毕竟这样表述比较混乱,请教前辈们是否可以通过指针方式达到这种(通过多个键获取对应值的数组的)效果?我用了很多种方法也不行~

多谢指教!


--
Yang Jie(杨杰)
Group of MRMSS, Xi'an Jiaotong University
Department of Computer Science and Technology, Xi’an Jiaotong University

hi.baidu.com/thinkdifferent
PHONE: 86 1346888 3723
TEL: 86 29 82665263 EXT. 24
MSN: xtyangjie2004@yahoo.com.cn








--
Yang Jie(杨杰)
Group of MRMSS, Xi'an Jiaotong University
Department of Computer Science and Technology, Xi’an Jiaotong University

hi.baidu.com/thinkdifferent
PHONE: 86 1346888 3723
TEL: 86 29 82665263 EXT. 24
MSN: xtyangjie2004@yahoo.com.cn








--
Yang Jie(杨杰)
Group of MRMSS, Xi'an Jiaotong University
Department of Computer Science and Technology, Xi’an Jiaotong University

hi.baidu.com/thinkdifferent
PHONE: 86 1346888 3723
TEL: 86 29 82665263 EXT. 24
MSN: xtyangjie2004@yahoo.com.cn


--
           Yours Sincerely
                   Zeng Hong

--~--~---------~--~----~------------~-------~--~----~
您收到此信息是由于您订阅了 Google 论坛"PerlChina Mongers 讨论组"论坛。
 要在此论坛发帖,请发电子邮件到 perlchina@googlegroups.com
 要退订此论坛,请发邮件至 perlchina+unsubscribe@googlegroups.com
 更多选项,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问该论坛

-~----------~----~----~----~------~----~------~--~---

没有评论: