私は、ユーザー定義変数に依存する関数を呼び出すことができるサブ関数への参照を含むハッシュを作成したいと考えています。Perlサブ関数のハッシュ
my %colors = (
vim => setup_vim(),
emacs => setup_emacs(),
)
$colors{$editor}(arg1, arg2, arg3)
setup_vim()
と
setup_emacs()
サブ機能は後で私のファイルで定義される
と$editor
ユーザー定義変数(すなわちVIMやemacs)です。これは可能ですか?私はそれを働かせることができないか、または被験者に関する良い情報を見つけることができません。ありがとう。
(私はそれが動作スイッチとして、今実装されていますが、私は上記のようなハッシュは、それが簡単に私の既存のコードに新しいエントリを追加することになるだろうと思います注意してください)
お互いのおかげで、うまく動作しました。私は閉鎖が私はPerlをマスターすることによってPerlをマスターしているのか分かりません。そして、彼らは2-3章で離れています:) –
Closureは他の種類のレキシカル変数でも動作します。私。 – tchrist
@tchrist:はい、クロージャはすべてのレキシカル変数で動作します。しかし、人々がそれらを使用したいものは、明らかに我々の変数で起こらない。それでも私は自分の反応を更新しました。 – btilly