У меня мало сомнений по поводу объема local/our
в Perl. Я прочитал много документации, но я все еще в замешательстве. ниже приведены недоразумения
Что такое область действия
local
?то, что я прочитал, → local копирует значение глобальной переменной, изменяет значение, пользователь будет использовать его, и вне блока оно сохранит глобальное значение
Путаница →
my
делает то же самое. Единственное преимущество, которое я вижу, состоит в том, что некоторые переменные, такие как$package::var
, не могут быть объявлены с моей областью, но могут быть объявлены с локальной областью. Что еще для локальногоЧто такое "глобальная" переменная?
То, что читается, → Его объем находится внутри пакета. По сути, мы помещаем глобальную переменную в массив @EXPORT
и используем ее или добавляем вместе с ней пространство имен для использования в других пакетах.
сомнения → Опять же, если мы объявим переменную с областью действия my
только в main, тогда мы сможем получить доступ к переменной во всем пакете. Это правильно? Можно ли добавить переменные области my
в массив @EXPORT
и использовать его в других пакетах?
Я думаю, что глобальные переменные объявляются с ключевым словом our
. Есть ли другой способ сделать это?
Этот вопрос может выглядеть повторяющимся, но я в замешательстве.