$link = Winners::links->new();my @fIElds = $link->column_names; foreach my $fIEld ( values @fIElds[0]) {
我试图做:
foreach my $fIEld ( values {@fIElds[0]}) { foreach my $fIEld ( values %{@fIElds[0]}) { foreach my $fIEld ( values %@fIElds[0]) {
不是他们的作品.任何想法应该怎么做?谢谢.
以下是@fIElds对象定义的更多内容:
[[ 'ID','entry','selection','status']]解决方法 这是在Perl 5.14中添加的,但在5.23中删除了:
Experimental
%s
on scalar is Now forbIDden (F) An experimental
feature added in Perl 5.14 allowed each,keys,push,pop,shift,
splice,unshift,and values to be called with a scalar argument. This
experiment is consIDered unsuccessful,and has been removed. The
postderef feature may meet your needs better.
因此,如果您在引用上使用它,请先取消引用它.有
由于你的原始代码,到达这里有些困惑:
foreach my $fIEld ( values @fIElds[0]) {
这里@fIElds [0]实际上是一个切片,它是有效的,并且有效.但
严格和警告你会得到类似的东西:
Scalar value @fIElds[0] better written as $fIElds[0] at - line x.
事实上,如果你正在访问一个项目(如参考,可能在你的
case)你应该使用$fIElds [0]代替.所以首先纠正一下,
然后取消引用以符合标准的价值要求
(作为一个列表.它仅接受标量作为实验特征
过去).
foreach my $fIEld ( values %{$fIElds[0]})总结
以上是内存溢出为你收集整理的现在禁止标量的实验值 – perl全部内容,希望文章能够帮你解决现在禁止标量的实验值 – perl所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)