Perl でオブジェクト指向 C++風
Perl でオブジェクト指向っぽいコードを書こうとすると、一つの「パッケージ」の中に複数の「クラス」が存在するとき、「パッケージ」でインポートしたはずの関数などが、「クラス」内で使えないことが不満だった。かといってすべて「パッケージ」にするのはちょっとしたシミュレーションを作るときなどに不便である。BEGIN や import、eval、Exporter などを組み合わせてなんとかできないかと試したところ、そこそこ満足できる解を見つけた。
最初に断っておくが、私は「プロ」プログラマではないため、Perl も C++ もオブジェクト指向も、知識が不十分の半可通である。また、タイトルではわかりやすさを重視して「C++風」と書いたが、単に最初に書いたように「クラス」内でいちいち use せずに「パッケージ」で一活して use したいというだけの話である。
2010-12-31 09:42:55 (JST) in Perl | 固定リンク | コメント (8) | トラックバック (4)