すぐわかる オブジェクト指向 Perl 第2章 「参照」は小粒でピリリと辛い 〜 スカラー リファレンス 〜
スカラーリファレンスで1章まるまる?
- リファレンスについては「どういうものか」は分かるんだけど、スカラーリファレンスって使い道あるんかな・・・?
- という疑問を持ちつつ本を読んでいく
今の時点で理解している「リファレンス」
- 変数がおさめられているメモリ上の番地
- 配列やハッシュもリファレンスにするとスカラーとして扱う事が出来る
- 配列の中に配列、ハッシュを入れる事は出来ないが、スカラーなら入れられる
- だからリファレンスにしてスカラーにする事で、配列の中に(リファレンス化した)配列やハッシュを入れる事が出来るようになる
- リファレンス化した配列やハッシュを元に戻すには「デリファレンス」を行う
!?
$refAge = \14; print "refAge is $refAge and it contains $$refAge \n"; # refAge is SCALAR(0x7fddf201ad10) and it contains 14 $refName = \"Robin"; print "refName is $refName and it contains $$refName \n"; # refName is SCALAR(0x7fddf201ae78) and it contains Robin
$refAge = \14
こんな書き方も出来るのか- メモリ空間に直接数値を入れ、そこへのリファレンスが生成されると
スカラー変数のリファレンスはあまり役に立たない
- ですよねー
- 次章以降の配列、ハッシュ、サブルーチンリファレンスが楽しみ