如何用for …每个循环重置多个Perl哈希?
发布时间:2020-12-16 06:06:29 所属栏目:大数据 来源:网络整理
导读:我需要在mod_perl脚本中重置一些全局哈希变量. 这有效 – 如上所述.这里:https://stackoverflow.com/a/4090870 $_ = '' for ($a,$b,$c);$_ = 0 for ($d,$e,$f); 这似乎不起作用: $_ = () for (%a,%b,%c); 为什么它不适用于哈希?可以吗?数组怎么样? (我
我需要在mod_perl脚本中重置一些全局哈希变量.
这有效 – 如上所述.这里:https://stackoverflow.com/a/4090870 $_ = '' for ($a,$b,$c); $_ = 0 for ($d,$e,$f); 这似乎不起作用: $_ = () for (%a,%b,%c); 为什么它不适用于哈希?可以吗?数组怎么样? (我通常会尝试对变量进行范围调整,因此上面的内容不是必需的,但在这种情况下,我担心它必须是这样的.另外,我可能会遗漏一些基本的理解…每个循环如何工作Perl,请赐教.) 解决方法
你可以用引用来做到这一点:
%$_ = () for (%a,%b,%c); 但这并没有回答你的问题,为什么没有引用它不起作用: 将哈希值放入for(%h)-statement时,哈希值会在列表上下文中隐式计算. (编辑:我最初说的是标量上下文,后来实现了列表上下文并调整了答案) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |