免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12
最近访问板块 发新帖
楼主: FTDlinux
打印 上一主题 下一主题

perl 哈希赋值 [复制链接]

论坛徽章:
0
11 [报告]
发表于 2012-09-04 17:34 |只看该作者
print ref($_) for (keys %hash);   打印为空,$hash的key已经不是引用了。

论坛徽章:
0
12 [报告]
发表于 2012-09-04 17:54 |只看该作者
$_中确实存了匿名数组的地址 ,
但 print ref$_ for (keys %hash); 返回为空,说明类型不是引用了,所以不能转换了。

可以这样试试。不知道能不能符合你的要求。但必须注释掉 use strict;
《符号引用》
  1. our $a = [10,20];
  2. our $b = [20,30];
  3. our $c = [30,40];
  4. my %hash = (
  5.         a => 1,
  6.         b => 2,
  7.         c => 3
  8. );
  9. #print Dumper(\%hash);
  10. for my $i (keys %hash){
  11.         print $$i;
  12.         print ref($$i);
  13.         print @$$i;
  14. }
复制代码

论坛徽章:
0
13 [报告]
发表于 2012-09-04 21:00 |只看该作者
楼主要 引用 作为hash的key?可以考虑用这个模块Tie::RefHash

论坛徽章:
0
14 [报告]
发表于 2012-09-04 21:11 |只看该作者
++;
Perl_Er 发表于 2012-09-04 14:31
回复 5# FTDlinux
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP