Принудительное использование скалярного контекста

Иногда бывает необходимо принудительно использовать скалярный контекст там, где Perl ожидает получить список. В таких ситуациях используется псевдофункция scalar. Она не является полноценной функцией и всего лишь сообщает Perl о необходимости использования скалярного контекста:

@rocks = qw( talc quartz jade obsidian );
print "How many rocks do you have?\n";
print "I have ", @rocks, " rocks!\n"; # НЕВЕРНО, выводятся строки
print "I have ", scalar @rocks, " rocks!\n"; # Верно, выводится число

Как ни странно, парной функции для принудительного использования списочного контекста не существует. Впрочем, она вам и не понадобится. Пока поверьте на слово.

Оцените статью: (0 голосов)
0 5 0

Статьи из раздела Perl на эту тему:
в списочном контексте
Главная служебная переменная: $_
Интерполяция массивов в строках
Использование выражений, создающих скаляры, в списочном контексте
Использование выражений, создающих списки, в скалярном контексте

Вернуться в раздел: Perl / 2. Списки и массивы