vars
СОДЕРЖАНИЕ
ИМЯ
vars - Perl-прагма для предварительной декларации имен глобальных переменных
СИНТАКСИС
use vars qw($frob @mung %seen); ОПИСАНИЕ
ПРИМЕЧАНИЕ: Для использования с переменными в текущем пакете для одного области видимости, функциональность, предоставляемая этой прагмой, была заменена our объявлениями, доступными в Perl v5.6.0 или более поздних версиях, и использование этой прагмы не рекомендуется. См. "our" в perlfunc.
Эта прагма предварительно декларирует все переменные, имена которых находятся в списке, что позволяет вам использовать их под use strict, и отключает любые предупреждения об ошибках синтаксиса для них.
В отличие от прагм, которые влияют на $^H подсказки переменных, use vars и use subs объявления не являются лексически связанными с блоком, в котором они появляются: они влияют на весь пакет, в котором они появляются. Невозможно отменить эти объявления с помощью no vars или no subs.
Пакеты, такие как AutoLoader и SelfLoader, которые откладывают загрузку подпрограмм внутри пакетов, могут создавать проблемы с пакетными лексическими переменными, определёнными с помощью my(). Хотя прагма vars не может дублировать эффект пакетных лексических переменных (полная прозрачность за пределами пакета), она может служить приемлемой заменой, предварительно декларируя глобальные символы, гарантируя их доступность для загруженных позднее подпрограмм.
См. "Прагматические модули" в perlmodlib.
© 1993–2020 Larry Wall and others
Licensed under the GNU General Public License version 1 or later, or the Artistic License.
The Perl logo is a trademark of the Perl Foundation.
https://perldoc.perl.org/5.28.3/vars