Иллюстрированный самоучитель по Perl

Вызов подпрограммы

Мы знаем, что принадлежность к тому или иному типу определяется префиксом имени:

  • $х – скалярная переменная,
  • @х – массив,
  • %х – ассоциативный массив.

Префиксом функции является символ "&". К любой подпрограмме можно обратиться, указав ее имя с префиксом &:

Sname args; Sname(args); Sname;

Здесь args обозначает список аргументов подпрограммы. Если список аргументов отсутствует, вместо него используется специальный массив @_.

Если после имени подпрограммы следуют скобки, префикс & можно опустить:

name (args); name();

Если до обращения к ней подпрограмма была объявлена или импортирована, то скобки также можно опустить:

sub name {…}; name args;
name;

Если подпрограмма вызывается через ссылку на нее, префикс является обязательным:

$subref = sub (…}; Ssubref(args);
ssubref;

Подпрограмма может быть использована в выражении как функция, возвращающая значение. По умолчанию значением подпрограммы является последнее вычисленное в ней выражение. Его можно изменить, указав явно в качестве аргумента функцию return () в любой точке подпрограммы. Возвращаемое значение может быть скалярной величиной или массивом.

Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.