Я хочу создать библиотеку с методами A (), B () и C (), которые будут вызываться сотни раз в каждой программе perl с разными строками в качестве параметров. Каждый метод обновляет соответствующий массив (@A, @B и @ C), поэтому я не хочу каждый раз передавать массив по ссылке. Каждая программа perl также несколько уникальных строк, которые они добавляют в массив, поэтому я не могу создать массив и изменить его только пакетом.
Можно ли управлять общим массивом из основной программы в пакет без необходимости передавать его через подпрограмму? Есть ли способ установить массив псевдонимов или указатель на массив для ссылки на массив в основном?
main.pl
use MyPackage;
our @a;
MyPackage.pm
package MyPackage;
$alias_a = @main::a;
push @alias_a, "1";
ИЛИ
$aref = \@main::a;
push @$aref, "1";
edit: обновлен OP с дополнительной справочной информацией.