ourは、myやlocalと同様に、変数を宣言するためのものです。our宣言された変数は、グローバル変数をパッケージ名で修飾しなくても使用できるようにします。our宣言はmy宣言と似ていますが、新たにローカル変数を生成するかわりに、カレントパッケージに所属するグローバル変数をパッケージ修飾なしで使えるようにしてくれます。our宣言の有効範囲は、myと同じで、宣言が置かれているブロック、eval、またはファイルの末尾まで有効です。 our宣言は、use strict 'vars'プラグマと共に使用されます。use strict 'vars'プラグマを指定した場合、グローバル変数はパッケージ名で修飾して$package::varのように書く必要がありますが、our宣言により、パッケージ名を省略できます。 ourで宣言した変数は、宣言を行なった時点で有効なパッケージに所属します。package文