0

我在数组中有一个表,我正在尝试使用以下方法对其进行排序:

@table_array = sort { $a->[0] <=> $b->[0] } @table_array;

但我得到这个错误:

Can't use string ("5") as an ARRAY ref while "strict refs" in use at 

My$table_array[x][0]是一个数值。我通过读取两个文件并将它们合并到一个公共字段($table_array[x][1]确切地说)来创建此表。

我无法理解我在哪里要求使用字符串引用访问元素。

谢谢,卡西克 S。

4

1 回答 1

3

My$table_array[x][0]是一个数值。

不,那不是真的。对于其中一个元素,$table_array[x]5而不是参考。

>perl -e"use strict; $a=5; $a->[0]"
Can't use string ("5") as an ARRAY ref while "strict refs" in use at -e line 1.

也许你做到了

$table_array[$x] = @rec;

代替

$table_array[$x] = \@rec;
于 2013-03-02T17:38:25.057 回答