內容

名稱

vars - Perl pragma 用於預先宣告全域變數名稱

語法

use vars qw($frob @mung %seen);

說明

注意:對於單一範圍中目前套件中的變數,此 pragma 所提供的功能已被 Perl v5.6.0 或更新版本中提供的 our 宣告取代,因此不建議使用此 pragma。請參閱 "our" in perlfunc

此實用程式會預先宣告清單中所有變數的名稱,讓您可以在 use strict 下使用它們,並停用任何它們的拼字錯誤警告。

與影響 $^H 提示變數的實用程式不同,use varsuse subs 宣告不會依詞彙範圍限制至它們出現的區塊:它們會影響它們出現的整個套件。無法以 no varsno subs 撤銷這些宣告。

例如 AutoLoaderSelfLoader 等會延後載入套件內子常式的套件,可能會造成使用 my() 定義的套件詞彙範圍問題。雖然 vars 實用程式無法複製套件詞彙範圍的效果(套件外完全透明),但它可以透過預先宣告全域符號來作為可接受的替代方案,確保後續載入的常式可以使用它們。

請參閱 perlmodlib 中的「實用程式模組」