Всем привет!
В общем, пробовал вот так (не вышло):
sub load($**)
{
my ($filename, $x1_ref, $x2_ref) = @_;
my ($num_str, @x1, @x2);
open my $file, '<', $filename or die "Невозможно открыть файл: $!\n";
#do_smth
close $file;
$x1_ref = \ @x1;
$x2_ref = \ @x2;
}
sub use_it
{
my (@x1, @x2) = @_;
#do smth
print @x1;
print @x2;
}
my (@num_str_array_w,@all_str_w);
load($ARGV[1],@x,@y);
use_it(@x,@y);
Хочется, чтобы load, читая из файла, правильно заполняла массивы, которые потом передавались бы в use_it. В перле я пока не до конца понимаю (от слова совсем), как работают ссылки.
Проблема в том, что из load ничего не возвращается. Зная С++, я понимаю почему (после выхода из функции массив умирает, ссылка остается), но не понимаю, как правильно написать код в перле....