2014年12月26日金曜日

[Perl] mainに存在する変数を知る方法

mainパッケージ(特に指定しなければデフォルトでmainパッケージにてプログラムは実行されます)に存在する変数一覧を取得するには次のようにします。これをシンボルテーブルといいます。
任意のパッケージのシンボルテーブルはmain::の箇所を、当該パッケージ名に変えれば良いだけです。 ちなみに、myを使って宣言した変数はレキシカル変数といい、シンボルテーブルには登録されないので、この方法では参照できません。myで宣言した変数は、当該変数のスコープ内でのみ存在し、スコープを抜けると解放されます。

参考:
 perlmod - Perl のモジュール (パッケージとシンボルテーブル) - perldoc.jp
 Perlのスコープを理解する - サンプルコードによるPerl入門 ~ 安定と信頼のPerlを学ぼう ~

0 件のコメント:

コメントを投稿