Автор статьи не дает никаких гарантий, что код приведенный в ней будучи "преобразованный" с помощью Copy/Past заработает. Все примеры работали на момент написания статьи. Инициализация (очистка) массива.
Реализация
my @array = ();
Реализация
$#array - это индекс (порядковый номер) последнего элемента массива (на единицу меньше, чем количество элементов в массиве, так как массив начинается с нуля). Присвоение $#array изменяет длину массива @array, таким образом вы можете уничтожить (или очистить) все элементы массива между заданным при присвоении и последним. При присвоении -1, все элементы уничтожаются и массив очищается. Я рекомендую следующее решение:
$#array = -1;
Определение существования элемента массива
Реализация
print Значение СУЩЕСТВУЕТ, но может быть неопределенно.n if exists $array[ $index ];
print Значение ОПРЕДЕЛЕНО, но может быть false.n if defined $array[ $index ];
print Зачениие элемента с индексом $index TRUE.n if $array[ $index ];
Определение количества элементов в массиве.
Реализация
Если вы хотите вывести количество элементов в массиве, то вот самый простой способ:
print size of array: . @array . .n;
Реализация
Если вы хотите присвоить размер массива переменной, то просто используйте скалярный контекст:
$size = @array; print size of array: $size.n;
Явно, скалярный контекст может быть получен с помощью функции scalar
$size = scalar @array; print size of array: $size.n;
Кроме этого, существует еще один способ получения количества элементов массива. Я рекомендую использовать именно его: