Я пытаюсь создать массив массивов, а затем сослаться на них.
Я делаю что-то вроде:
sub foobar
{
my @array;
my $i;
for ($i = 0; $i < 1000; $i=$i+1)
{
my @row;
$row[0] = $i;
$row[1] = foo($bar);
push @array , [@row];
}
return \@array;
}
Я могу получить значения через:
$array->[x]->[y];
Однако я не понимаю, зачем нужен второй ->. $ array -> [x] Я понимаю, что $ array является ссылкой. Но разве $ array -> [x] не должен быть массивом? Почему это не работает:
my @notarray = $array->[x];
Чем конкретно массив не заполнен сейчас? Поскольку это, конечно, не массив, содержащий $ i, foo ($ bar)
Как бы $ массив -> [x] -> [y] отличался бы для ссылки на массив ссылок на массивы?